home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
QuickTime 1.0 for Developers
/
QuickTime 1.0 for Developers.iso
/
System Stuff
/
Sound Mgr. Drivers
/
Articulate Systems
/
Voice Impact Sound Driver
/
Voice Impact Sound Driver.rsrc
/
INIT_22.txt
< prev
next >
Wrap
Text File
|
1991-08-27
|
140KB
|
2,546 lines
start:
00000000 4E56 FDF8 link A6, -0x0208
00000004 48E7 0F18 movem.l -[A7], D4,D5,D6,D7,A3,A4
00000008 49EE FDFC lea.l A4, [A6 - 0x204]
0000000C 7000 moveq.l D0, 0x00
0000000E 2D40 FFFC move.l [A6 - 0x4], D0
00000012 4207 clr.b D7
00000014 2F00 move.l -[A7], D0
00000016 2F3C 0000 A0AD move.l -[A7], 0xA0AD
0000001C 4EBA 0DE8 jsr [PC + 0xDE8 /* 00000E06 */]
00000020 4A00 tst.b D0
00000022 508F addq.l A7, 8
00000024 672C beq +0x2E /* 00000052 */
00000026 558F subq.l A7, 2
00000028 2F3C 766D 2020 move.l -[A7], 0x766D2020 /* 'vm ' */
0000002E 486E FFFC pea.l [A6 - 0x4]
00000032 4EBA 1612 jsr [PC + 0x1612 /* 00001646 */]
00000036 301F move.w D0, [A7]+
00000038 48C0 ext.l D0
0000003A 6616 bne +0x18 /* 00000052 */
0000003C 4AAE FFFC tst.l [A6 - 0x4]
00000040 6710 beq +0x12 /* 00000052 */
00000042 3F3C F023 move.w -[A7], 0xF023
00000046 70FF moveq.l D0, 0xFFFFFFFF
00000048 3F00 move.w -[A7], D0
0000004A 4EBA 048E jsr [PC + 0x48E /* 000004DA */]
0000004E 6000 012A bra +0x12C /* 0000017A */
label00000052:
00000052 558F subq.l A7, 2
00000054 7003 moveq.l D0, 0x03
00000056 3F00 move.w -[A7], D0
00000058 4EBA 0F9A jsr [PC + 0xF9A /* 00000FF4 */]
0000005C 381F move.w D4, [A7]+
0000005E 3004 move.w D0, D4
00000060 48C0 ext.l D0
00000062 72FF moveq.l D1, 0xFFFFFFFF
00000064 B280 cmp.l D1, D0
00000066 6720 beq +0x22 /* 00000088 */
00000068 2F0C move.l -[A7], A4
0000006A 3F3C F020 move.w -[A7], 0xF020
0000006E 7003 moveq.l D0, 0x03
00000070 3F00 move.w -[A7], D0
00000072 4EBA 1422 jsr [PC + 0x1422 /* 00001496 */]
00000076 486E FEFC pea.l [A6 - 0x104]
0000007A 3F3C F024 move.w -[A7], 0xF024
0000007E 7003 moveq.l D0, 0x03
00000080 3F00 move.w -[A7], D0
00000082 4EBA 1412 jsr [PC + 0x1412 /* 00001496 */]
00000086 601A bra +0x1C /* 000000A2 */
label00000088:
00000088 487A 0108 pea.l [PC + 0x108 /* 00000192, value 0x92E5649 '\t.VI', pstring ".VIDriver" */]
0000008C 2F0C move.l -[A7], A4
0000008E 4EBA 17DE jsr [PC + 0x17DE /* 0000186E */]
00000092 487A 00F0 pea.l [PC + 0xF0 /* 00000184, value 0xC566F69, pstring "Voice Impact" */]
00000096 486E FEFC pea.l [A6 - 0x104]
0000009A 4EBA 17D2 jsr [PC + 0x17D2 /* 0000186E */]
0000009E 4FEF 0010 lea.l A7, [A7 + 0x10]
label000000A2:
000000A2 4EBA 00FA jsr [PC + 0xFA /* 0000019E */]
000000A6 3A00 move.w D5, D0
000000A8 48C0 ext.l D0
000000AA 6700 00A4 beq +0xA6 /* 00000150 */
000000AE 48C5 ext.l D5
000000B0 2005 move.l D0, D5
000000B2 5280 addq.l D0, 1
000000B4 4480 neg.l D0
000000B6 3D40 FDF8 move.w [A6 - 0x208], D0
000000BA 598F subq.l A7, 4
000000BC 2F3C 4452 5652 move.l -[A7], 0x44525652 /* 'DRVR' */
000000C2 2F0C move.l -[A7], A4
000000C4 A9A1 syscall GetNamedResource
000000C6 265F movea.l A3, [A7]+
000000C8 2F0B move.l -[A7], A3
000000CA A992 syscall DetachResource
000000CC 2F0B move.l -[A7], A3
000000CE 205F movea.l A0, [A7]+
000000D0 A029 syscall HLock
000000D2 558F subq.l A7, 2
000000D4 2F0B move.l -[A7], A3
000000D6 3F2E FDF8 move.w -[A7], [A6 - 0x208]
000000DA 4EBA 03E6 jsr [PC + 0x3E6 /* 000004C2 */]
000000DE 301F move.w D0, [A7]+
000000E0 48C0 ext.l D0
000000E2 6666 bne +0x68 /* 0000014A */
000000E4 48C5 ext.l D5
000000E6 2F05 move.l -[A7], D5
000000E8 2F0B move.l -[A7], A3
000000EA 4EBA 00E6 jsr [PC + 0xE6 /* 000001D2 */]
000000EE 2F0B move.l -[A7], A3
000000F0 205F movea.l A0, [A7]+
000000F2 A02A syscall HUnlock
000000F4 558F subq.l A7, 2
000000F6 2F0C move.l -[A7], A4
000000F8 486E FDFA pea.l [A6 - 0x206]
000000FC 4EBA 0FB4 jsr [PC + 0xFB4 /* 000010B2 */]
00000100 301F move.w D0, [A7]+
00000102 48C0 ext.l D0
00000104 508F addq.l A7, 8
00000106 662E bne +0x30 /* 00000136 */
00000108 558F subq.l A7, 2
0000010A 3F2E FDFA move.w -[A7], [A6 - 0x206]
0000010E 486E FEFC pea.l [A6 - 0x104]
00000112 4EBA 0B30 jsr [PC + 0xB30 /* 00000C44 */]
00000116 301F move.w D0, [A7]+
00000118 48C0 ext.l D0
0000011A 6634 bne +0x36 /* 00000150 */
0000011C 2F0C move.l -[A7], A4
0000011E 4EBA 0108 jsr [PC + 0x108 /* 00000228 */]
00000122 48C0 ext.l D0
00000124 588F addq.l A7, 4
00000126 6606 bne +0x8 /* 0000012E */
00000128 3C3C F022 move.w D6, 0xF022
0000012C 6004 bra +0x6 /* 00000132 */
label0000012E:
0000012E 3C3C F024 move.w D6, 0xF024
label00000132:
00000132 7E01 moveq.l D7, 0x01
00000134 601A bra +0x1C /* 00000150 */
label00000136:
00000136 558F subq.l A7, 2
00000138 3F2E FDF8 move.w -[A7], [A6 - 0x208]
0000013C 4EBA 0392 jsr [PC + 0x392 /* 000004D0 */]
00000140 2F0B move.l -[A7], A3
00000142 205F movea.l A0, [A7]+
00000144 A023 syscall DisposHandle/DisposeHandle
00000146 548F addq.l A7, 2
00000148 6006 bra +0x8 /* 00000150 */
label0000014A:
0000014A 2F0B move.l -[A7], A3
0000014C 205F movea.l A0, [A7]+
0000014E A02A syscall HUnlock
label00000150:
00000150 48C4 ext.l D4
00000152 70FF moveq.l D0, 0xFFFFFFFF
00000154 B084 cmp.l D0, D4
00000156 6704 beq +0x6 /* 0000015C */
00000158 3F04 move.w -[A7], D4
0000015A A99A syscall CloseResFile
label0000015C:
0000015C 7000 moveq.l D0, 0x00
0000015E 1007 move.b D0, D7
00000160 660E bne +0x10 /* 00000170 */
00000162 3F3C F023 move.w -[A7], 0xF023
00000166 70FF moveq.l D0, 0xFFFFFFFF
00000168 3F00 move.w -[A7], D0
0000016A 4EBA 036E jsr [PC + 0x36E /* 000004DA */]
0000016E 600A bra +0xC /* 0000017A */
label00000170:
00000170 3F06 move.w -[A7], D6
00000172 70FF moveq.l D0, 0xFFFFFFFF
00000174 3F00 move.w -[A7], D0
00000176 4EBA 0362 jsr [PC + 0x362 /* 000004DA */]
label0000017A:
0000017A 4CEE 18F0 FDE0 movem.l D4,D5,D6,D7,A3,A4, [A6 - 0x220]
00000180 4E5E unlink A6
00000182 4E75 rts
00000184 0C56 6F69 cmpi.w [A6], 0x6F69 /* 'oi' */
00000188 6365 bls +0x67 /* 000001EF */
0000018A 2049 movea.l A0, A1
0000018C 6D70 blt +0x72 /* 000001FE */
0000018E 6163 bsr +0x65 /* 000001F3 */
00000190 7400 moveq.l D2, 0x00
00000192 092E 5649 btst [A6 + 0x5649], D4
00000196 4472 6976 neg.w <<invalid full ext with IS == 1 and I/IS == 6>>
0000019A 6572 bcs +0x74 /* 0000020E */
0000019C 0000 48E7 ori.b D0, 0xE7
// begin alternate branch 0000019E-000001A2
fn0000019E:
0000019E 48E7 0118 movem.l -[A7], D7,A3,A4
// end alternate branch 0000019E-000001A2
fn0000019E: // (misaligned)
000001A0 0118 btst [A0]+, D0
000001A2 3E38 01D2 move.w D7, [0x000001D2 /* UnitNtryCnt */]
000001A6 2878 011C movea.l A4, [0x0000011C /* UTableBase */]
000001AA 6012 bra +0x14 /* 000001BE */
label000001AC:
000001AC 48C7 ext.l D7
000001AE 2007 move.l D0, D7
000001B0 E580 asl D0, 2
000001B2 2640 movea.l A3, D0
000001B4 D7CC add.l A3, A4
000001B6 4A93 tst.l [A3]
000001B8 6604 bne +0x6 /* 000001BE */
000001BA 3007 move.w D0, D7
000001BC 600E bra +0x10 /* 000001CC */
label000001BE:
000001BE 5347 subq.w D7, 1
000001C0 3007 move.w D0, D7
000001C2 48C0 ext.l D0
000001C4 7227 moveq.l D1, 0x27
000001C6 B280 cmp.l D1, D0
000001C8 6DE2 blt -0x1C /* 000001AC */
000001CA 7000 moveq.l D0, 0x00
label000001CC:
000001CC 4CDF 1880 movem.l D7,A3,A4, [A7]+
000001D0 4E75 rts
fn000001D2:
000001D2 4E56 FFFC link A6, -0x0004
000001D6 48E7 0018 movem.l -[A7], A3,A4
000001DA 286E 0008 movea.l A4, [A6 + 0x8]
000001DE 2678 011C movea.l A3, [0x0000011C /* UTableBase */]
000001E2 302E 000E move.w D0, [A6 + 0xE]
000001E6 48C0 ext.l D0
000001E8 E580 asl D0, 2
000001EA D08B add.l D0, A3
000001EC 2D40 FFFC move.l [A6 - 0x4], D0
000001F0 206E FFFC movea.l A0, [A6 - 0x4]
000001F4 2050 movea.l A0, [A0]
000001F6 2650 movea.l A3, [A0]
000001F8 268C move.l [A3], A4
000001FA 2054 movea.l A0, [A4]
000001FC 3750 0004 move.w [A3 + 0x4], [A0]
// begin alternate branch 000001FE-00000206
label000001FE:
000001FE 0004 006B ori.b D4, 0x6B /* 'k' */
00000202 0040 0004 ori.w D0, 0x4
// end alternate branch 000001FE-00000206
label000001FE: // (misaligned)
00000200 006B 0040 0004 ori.w [A3 + 0x4], 0x40 /* '@' */
00000206 2054 movea.l A0, [A4]
00000208 3768 0002 0022 move.w [A3 + 0x22], [A0 + 0x2]
label0000020E:
0000020E 2054 movea.l A0, [A4]
00000210 3768 0004 0024 move.w [A3 + 0x24], [A0 + 0x4]
00000216 2054 movea.l A0, [A4]
00000218 3768 0006 0026 move.w [A3 + 0x26], [A0 + 0x6]
0000021E 4CEE 1800 FFF4 movem.l A3,A4, [A6 - 0xC]
00000224 4E5E unlink A6
00000226 4E75 rts
fn00000228:
00000228 4E56 FFFC link A6, -0x0004
0000022C 48E7 0718 movem.l -[A7], D5,D6,D7,A3,A4
00000230 286E 0008 movea.l A4, [A6 + 0x8]
00000234 4207 clr.b D7
00000236 4205 clr.b D5
00000238 598F subq.l A7, 4
0000023A 2F3C 4153 494D move.l -[A7], 0x4153494D /* 'ASIM' */
00000240 2F0C move.l -[A7], A4
00000242 A820 syscall Get1NamedResource
00000244 265F movea.l A3, [A7]+
00000246 200B move.l D0, A3
00000248 660A bne +0xC /* 00000254 */
0000024A 558F subq.l A7, 2
0000024C A9AF syscall ResError
0000024E 301F move.w D0, [A7]+
00000250 6000 01C6 bra +0x1C8 /* 00000418 */
label00000254:
00000254 2F0B move.l -[A7], A3
00000256 205F movea.l A0, [A7]+
00000258 A064 syscall MoveHHi
0000025A 2F0B move.l -[A7], A3
0000025C 205F movea.l A0, [A7]+
0000025E A029 syscall HLock
00000260 2F0C move.l -[A7], A4
00000262 3F3C F024 move.w -[A7], 0xF024
00000266 7003 moveq.l D0, 0x03
00000268 3F00 move.w -[A7], D0
0000026A 4EBA 122A jsr [PC + 0x122A /* 00001496 */]
0000026E 558F subq.l A7, 2
00000270 2F0C move.l -[A7], A4
00000272 7001 moveq.l D0, 0x01
00000274 3F00 move.w -[A7], D0
00000276 486E FFFC pea.l [A6 - 0x4]
0000027A 4EBA 0650 jsr [PC + 0x650 /* 000008CC */]
0000027E 3C1F move.w D6, [A7]+
00000280 3006 move.w D0, D6
00000282 48C0 ext.l D0
00000284 670C beq +0xE /* 00000292 */
00000286 2F0B move.l -[A7], A3
00000288 205F movea.l A0, [A7]+
0000028A A02A syscall HUnlock
0000028C 3006 move.w D0, D6
0000028E 6000 0188 bra +0x18A /* 00000418 */
label00000292:
00000292 558F subq.l A7, 2
00000294 2F2E FFFC move.l -[A7], [A6 - 0x4]
00000298 2F3C 4466 6C74 move.l -[A7], 0x44666C74 /* 'Dflt' */
0000029E 2053 movea.l A0, [A3]
000002A0 2F08 move.l -[A7], A0
000002A2 4EBA 08D6 jsr [PC + 0x8D6 /* 00000B7A */]
000002A6 301F move.w D0, [A7]+
000002A8 48C0 ext.l D0
000002AA 6702 beq +0x4 /* 000002AE */
000002AC 7E01 moveq.l D7, 0x01
label000002AE:
000002AE 558F subq.l A7, 2
000002B0 2F2E FFFC move.l -[A7], [A6 - 0x4]
000002B4 2F3C 676F 6F64 move.l -[A7], 0x676F6F64 /* 'good' */
000002BA 2053 movea.l A0, [A3]
000002BC 4868 0004 pea.l [A0 + 0x4]
000002C0 4EBA 08B8 jsr [PC + 0x8B8 /* 00000B7A */]
000002C4 3C1F move.w D6, [A7]+
000002C6 3006 move.w D0, D6
000002C8 48C0 ext.l D0
000002CA 6730 beq +0x32 /* 000002FC */
000002CC 7000 moveq.l D0, 0x00
000002CE 2F00 move.l -[A7], D0
000002D0 48C6 ext.l D6
000002D2 2F06 move.l -[A7], D6
000002D4 2053 movea.l A0, [A3]
000002D6 4868 0004 pea.l [A0 + 0x4]
000002DA 2F3C 676F 6F64 move.l -[A7], 0x676F6F64 /* 'good' */
000002E0 2F2E FFFC move.l -[A7], [A6 - 0x4]
000002E4 4EBA 013C jsr [PC + 0x13C /* 00000422 */]
000002E8 4FEF 0010 lea.l A7, [A7 + 0x10]
000002EC 2200 move.l D1, D0
000002EE 201F move.l D0, [A7]+
000002F0 1A01 move.b D5, D1
000002F2 7200 moveq.l D1, 0x00
000002F4 1205 move.b D1, D5
000002F6 57C0 seq D0
000002F8 4400 neg.b D0
000002FA 1E00 move.b D7, D0
label000002FC:
000002FC 558F subq.l A7, 2
000002FE 2F2E FFFC move.l -[A7], [A6 - 0x4]
00000302 2F3C 6265 7472 move.l -[A7], 0x62657472 /* 'betr' */
00000308 2053 movea.l A0, [A3]
0000030A 4868 000C pea.l [A0 + 0xC]
0000030E 4EBA 086A jsr [PC + 0x86A /* 00000B7A */]
00000312 3C1F move.w D6, [A7]+
00000314 3006 move.w D0, D6
00000316 48C0 ext.l D0
00000318 6730 beq +0x32 /* 0000034A */
0000031A 7000 moveq.l D0, 0x00
0000031C 2F00 move.l -[A7], D0
0000031E 48C6 ext.l D6
00000320 2F06 move.l -[A7], D6
00000322 2053 movea.l A0, [A3]
00000324 4868 000C pea.l [A0 + 0xC]
00000328 2F3C 6265 7472 move.l -[A7], 0x62657472 /* 'betr' */
0000032E 2F2E FFFC move.l -[A7], [A6 - 0x4]
00000332 4EBA 00EE jsr [PC + 0xEE /* 00000422 */]
00000336 4FEF 0010 lea.l A7, [A7 + 0x10]
0000033A 2200 move.l D1, D0
0000033C 201F move.l D0, [A7]+
0000033E 1A01 move.b D5, D1
00000340 7200 moveq.l D1, 0x00
00000342 1205 move.b D1, D5
00000344 57C0 seq D0
00000346 4400 neg.b D0
00000348 1E00 move.b D7, D0
label0000034A:
0000034A 558F subq.l A7, 2
0000034C 2F2E FFFC move.l -[A7], [A6 - 0x4]
00000350 2F3C 6265 7374 move.l -[A7], 0x62657374 /* 'best' */
00000356 2053 movea.l A0, [A3]
00000358 4868 0014 pea.l [A0 + 0x14]
0000035C 4EBA 081C jsr [PC + 0x81C /* 00000B7A */]
00000360 3C1F move.w D6, [A7]+
00000362 3006 move.w D0, D6
00000364 48C0 ext.l D0
00000366 6730 beq +0x32 /* 00000398 */
00000368 7000 moveq.l D0, 0x00
0000036A 2F00 move.l -[A7], D0
0000036C 48C6 ext.l D6
0000036E 2F06 move.l -[A7], D6
00000370 2053 movea.l A0, [A3]
00000372 4868 0014 pea.l [A0 + 0x14]
00000376 2F3C 6265 7374 move.l -[A7], 0x62657374 /* 'best' */
0000037C 2F2E FFFC move.l -[A7], [A6 - 0x4]
00000380 4EBA 00A0 jsr [PC + 0xA0 /* 00000422 */]
00000384 4FEF 0010 lea.l A7, [A7 + 0x10]
00000388 2200 move.l D1, D0
0000038A 201F move.l D0, [A7]+
0000038C 1A01 move.b D5, D1
0000038E 7200 moveq.l D1, 0x00
00000390 1205 move.b D1, D5
00000392 57C0 seq D0
00000394 4400 neg.b D0
00000396 1E00 move.b D7, D0
label00000398:
00000398 558F subq.l A7, 2
0000039A 2F2E FFFC move.l -[A7], [A6 - 0x4]
0000039E 2F3C 7175 616C move.l -[A7], 0x7175616C /* 'qual' */
000003A4 2053 movea.l A0, [A3]
000003A6 2F08 move.l -[A7], A0
000003A8 4EBA 07D0 jsr [PC + 0x7D0 /* 00000B7A */]
000003AC 301F move.w D0, [A7]+
000003AE 48C0 ext.l D0
000003B0 6702 beq +0x4 /* 000003B4 */
000003B2 7E01 moveq.l D7, 0x01
label000003B4:
000003B4 558F subq.l A7, 2
000003B6 2F2E FFFC move.l -[A7], [A6 - 0x4]
000003BA 2F3C 5350 7274 move.l -[A7], 0x53507274 /* 'SPrt' */
000003C0 2053 movea.l A0, [A3]
000003C2 4868 0020 pea.l [A0 + 0x20]
000003C6 4EBA 07B2 jsr [PC + 0x7B2 /* 00000B7A */]
000003CA 301F move.w D0, [A7]+
000003CC 48C0 ext.l D0
000003CE 6702 beq +0x4 /* 000003D2 */
000003D0 7E01 moveq.l D7, 0x01
label000003D2:
000003D2 558F subq.l A7, 2
000003D4 2F2E FFFC move.l -[A7], [A6 - 0x4]
000003D8 2F3C 576F 7264 move.l -[A7], 0x576F7264 /* 'Word' */
000003DE 2053 movea.l A0, [A3]
000003E0 4868 002A pea.l [A0 + 0x2A]
000003E4 4EBA 0794 jsr [PC + 0x794 /* 00000B7A */]
000003E8 301F move.w D0, [A7]+
000003EA 48C0 ext.l D0
000003EC 6702 beq +0x4 /* 000003F0 */
000003EE 7E01 moveq.l D7, 0x01
label000003F0:
000003F0 558F subq.l A7, 2
000003F2 2F2E FFFC move.l -[A7], [A6 - 0x4]
000003F6 4EBA 069C jsr [PC + 0x69C /* 00000A94 */]
000003FA 2F0B move.l -[A7], A3
000003FC 205F movea.l A0, [A7]+
000003FE A02A syscall HUnlock
00000400 4A05 tst.b D5
00000402 548F addq.l A7, 2
00000404 6708 beq +0xA /* 0000040E */
00000406 2F0B move.l -[A7], A3
00000408 A9AA syscall ChangedResource
0000040A 2F0B move.l -[A7], A3
0000040C A9B0 syscall WriteResource
label0000040E:
0000040E 4A07 tst.b D7
00000410 6704 beq +0x6 /* 00000416 */
00000412 70FF moveq.l D0, 0xFFFFFFFF
00000414 6002 bra +0x4 /* 00000418 */
label00000416:
00000416 7000 moveq.l D0, 0x00
label00000418:
00000418 4CEE 18E0 FFE8 movem.l D5,D6,D7,A3,A4, [A6 - 0x18]
0000041E 4E5E unlink A6
00000420 4E75 rts
fn00000422:
00000422 4E56 0000 link A6, 0
00000426 48E7 0310 movem.l -[A7], D6,D7,A3
0000042A 266E 0010 movea.l A3, [A6 + 0x10]
0000042E 3C2E 0016 move.w D6, [A6 + 0x16]
00000432 2E2E 0008 move.l D7, [A6 + 0x8]
00000436 558F subq.l A7, 2
00000438 2F07 move.l -[A7], D7
0000043A 2F3C 7175 616C move.l -[A7], 0x7175616C /* 'qual' */
00000440 486E 000C pea.l [A6 + 0xC]
00000444 4EBA 0734 jsr [PC + 0x734 /* 00000B7A */]
00000448 301F move.w D0, [A7]+
0000044A 48C0 ext.l D0
0000044C 6704 beq +0x6 /* 00000452 */
0000044E 7000 moveq.l D0, 0x00
00000450 6066 bra +0x68 /* 000004B8 */
label00000452:
00000452 48C6 ext.l D6
00000454 0C86 FFFF FF1F cmpi.l D6, 0xFFFFFF1F
0000045A 6622 bne +0x24 /* 0000047E */
0000045C 558F subq.l A7, 2
0000045E 2F07 move.l -[A7], D7
00000460 2F3C 7372 6174 move.l -[A7], 0x73726174 /* 'srat' */
00000466 2F0B move.l -[A7], A3
00000468 4EBA 0696 jsr [PC + 0x696 /* 00000B00 */]
0000046C 558F subq.l A7, 2
0000046E 2F07 move.l -[A7], D7
00000470 2F2E 000C move.l -[A7], [A6 + 0xC]
00000474 2F0B move.l -[A7], A3
00000476 4EBA 0702 jsr [PC + 0x702 /* 00000B7A */]
0000047A 3C1F move.w D6, [A7]+
0000047C 548F addq.l A7, 2
label0000047E:
0000047E 48C6 ext.l D6
00000480 0C86 FFFF FF21 cmpi.l D6, 0xFFFFFF21
00000486 6624 bne +0x26 /* 000004AC */
00000488 558F subq.l A7, 2
0000048A 2F07 move.l -[A7], D7
0000048C 2F3C 636F 6D70 move.l -[A7], 0x636F6D70 /* 'comp' */
00000492 486B 0004 pea.l [A3 + 0x4]
00000496 4EBA 0668 jsr [PC + 0x668 /* 00000B00 */]
0000049A 558F subq.l A7, 2
0000049C 2F07 move.l -[A7], D7
0000049E 2F2E 000C move.l -[A7], [A6 + 0xC]
000004A2 2F0B move.l -[A7], A3
000004A4 4EBA 06D4 jsr [PC + 0x6D4 /* 00000B7A */]
000004A8 3C1F move.w D6, [A7]+
000004AA 548F addq.l A7, 2
label000004AC:
000004AC 48C6 ext.l D6
000004AE 4A86 tst.l D6
000004B0 6604 bne +0x6 /* 000004B6 */
000004B2 7001 moveq.l D0, 0x01
000004B4 6002 bra +0x4 /* 000004B8 */
label000004B6:
000004B6 7000 moveq.l D0, 0x00
label000004B8:
000004B8 4CEE 08C0 FFF4 movem.l D6,D7,A3, [A6 - 0xC]
000004BE 4E5E unlink A6
000004C0 4E75 rts
fn000004C2:
000004C2 225F movea.l A1, [A7]+
000004C4 301F move.w D0, [A7]+
000004C6 205F movea.l A0, [A7]+
000004C8 2050 movea.l A0, [A0]
000004CA A03D syscall DrvrInstall
000004CC 3E80 move.w [A7], D0
000004CE 4ED1 jmp [A1]
fn000004D0:
000004D0 225F movea.l A1, [A7]+
000004D2 301F move.w D0, [A7]+
000004D4 A03E syscall DrvrRemove
000004D6 3E80 move.w [A7], D0
000004D8 4ED1 jmp [A1]
fn000004DA:
000004DA 4E56 0000 link A6, 0
000004DE 48E7 1F38 movem.l -[A7], D3,D4,D5,D6,D7,A2,A3,A4
000004E2 0838 0006 028E btst.b [0x0000028E /* ROM85 */], 0x6
000004E8 6738 beq +0x3A /* 00000522 */
label000004EA:
000004EA 42A7 clr.l -[A7]
000004EC 2F3C 4943 4E23 move.l -[A7], 0x49434E23 /* 'ICN#' */
000004F2 3F2E 000A move.w -[A7], [A6 + 0xA]
000004F6 A9A0 syscall GetResource
000004F8 201F move.l D0, [A7]+
000004FA 671E beq +0x20 /* 0000051A */
000004FC 2F00 move.l -[A7], D0
000004FE 2040 movea.l A0, D0
00000500 2050 movea.l A0, [A0]
00000502 2F08 move.l -[A7], A0
00000504 3F2E 0008 move.w -[A7], [A6 + 0x8]
00000508 6100 010C bsr +0x10E /* 00000616 */
0000050C A9A3 syscall ReleaseResource
label0000050E:
0000050E 4CDF 1CF8 movem.l D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
00000512 4E5E unlink A6
00000514 205F movea.l A0, [A7]+
00000516 588F addq.l A7, 4
00000518 4ED0 jmp [A0]
label0000051A:
0000051A 3F3C 0001 move.w -[A7], 0x1
0000051E A9C8 syscall SysBeep
00000520 60EC bra -0x12 /* 0000050E */
label00000522:
00000522 2078 08A4 movea.l A0, [0x000008A4 /* MainDevice */]
00000526 2050 movea.l A0, [A0]
00000528 2068 0016 movea.l A0, [A0 + 0x16]
0000052C 2050 movea.l A0, [A0]
0000052E 0C68 0004 0020 cmpi.w [A0 + 0x20], 0x4
00000534 6DB4 blt -0x4A /* 000004EA */
00000536 42A7 clr.l -[A7]
00000538 3F2E 000A move.w -[A7], [A6 + 0xA]
0000053C AA1E syscall GetCIcon
0000053E 201F move.l D0, [A7]+
00000540 67A8 beq -0x56 /* 000004EA */
00000542 2F00 move.l -[A7], D0
00000544 2F00 move.l -[A7], D0
00000546 3F2E 0008 move.w -[A7], [A6 + 0x8]
0000054A 6100 014A bsr +0x14C /* 00000696 */
0000054E AA25 syscall DisposeCIcon/DisposCIcon
00000550 60BC bra -0x42 /* 0000050E */
00000552 5368 6F77 subq.w [A0 + 0x6F77], 1
00000556 494E chk.w D4, A6
00000558 4954 chk.w D4, [A4]
0000055A 2062 movea.l A0, -[A2]
0000055C 7920 moveq.l D4, 0x20
0000055E 5061 addq.w -[A1], 8
00000560 756C moveq.l D2, 0x6C
00000562 204D movea.l A0, A5
00000564 6572 bcs +0x74 /* 000005D8 */
00000566 6365 bls +0x67 /* 000005CD */
00000568 7200 moveq.l D1, 0x00
0000056A 436F 7079 chk.w D1, [A7 + 0x7079]
0000056E 7269 moveq.l D1, 0x69
00000570 6768 beq +0x6A /* 000005DA */
00000572 7420 moveq.l D2, 0x20
00000574 3139 3837 2D31 move.w -[A0], [0x38372D31]
0000057A 3938 3800 move.w -[A4], [0x00003800]
0000057E 5665 addq.w -[A5], 3
00000580 7273 moveq.l D1, 0x73
00000582 696F bvs +0x71 /* 000005F3 */
00000584 6E20 bgt +0x22 /* 000005A6 */
00000586 6F66 ble +0x68 /* 000005EE */
00000588 2037 2F31 352F 3838 move.l D0, [[A7 + 0x352F3838 + D2 * 8]]
fn00000590:
00000590 2D78 0904 FFFC move.l [A6 - 0x4], [0x00000904 /* CurrentA5 */]
00000596 4BEE FFF8 lea.l A5, [A6 - 0x8]
0000059A 21CD 0904 move.l [0x00000904 /* CurrentA5 */], A5
0000059E 486E FFF4 pea.l [A6 - 0xC]
000005A2 A86E syscall InitGraf
000005A4 486E FEA8 pea.l [A6 - 0x158]
// begin alternate branch 000005A6-000005AA
label000005A6:
000005A6 FEA8 A86F .extension 0xEA8 <<F/2-3/7>> // unimplemented
// end alternate branch 000005A6-000005AA
label000005A6: // (misaligned)
000005A8 A86F syscall OpenPort
000005AA 3038 092C move.w D0, [0x0000092C]
000005AE E358 rol D0.w, 1
000005B0 0A40 1021 xori.w D0, 0x1021
000005B4 B078 092E cmp.w D0, [0x0000092E]
000005B8 6706 beq +0x8 /* 000005C0 */
000005BA 31FC 0008 092C move.w [0x0000092C], 0x8
label000005C0:
000005C0 41EE FEA8 lea.l A0, [A6 - 0x158]
000005C4 3028 000C move.w D0, [A0 + 0xC]
000005C8 0440 0028 subi.w D0, 0x28 /* '(' */
000005CC 4840 swap.w D0
000005CE 3038 092C move.w D0, [0x0000092C]
000005D2 2D40 FF22 move.l [A6 - 0xDE], D0
000005D6 2D40 FF26 move.l [A6 - 0xDA], D0
// begin alternate branch 000005D8-000005DA
label000005D8:
000005D8 FF26 .extension 0xF26 <<F/4-5/7>> // unimplemented
// end alternate branch 000005D8-000005DA
label000005D8: // (misaligned)
label000005DA:
000005DA 066E 0020 FF28 addi.w [A6 - 0xD8], 0x20 /* ' ' */
000005E0 066E 0020 FF26 addi.w [A6 - 0xDA], 0x20 /* ' ' */
000005E6 4E75 rts
fn000005E8:
000005E8 3038 092C move.w D0, [0x0000092C]
000005EC 322E 0008 move.w D1, [A6 + 0x8]
// begin alternate branch 000005EE-000005F2
label000005EE:
000005EE 0008 6A04 ori.b A0, 0x4
// end alternate branch 000005EE-000005F2
label000005EE: // (misaligned)
000005F0 6A04 bpl +0x6 /* 000005F6 */
000005F2 323C 0028 move.w D1, 0x28 /* '(' */
label000005F6:
000005F6 D041 add.w D0, D1
000005F8 31C0 092C move.w [0x0000092C], D0
000005FC E358 rol D0.w, 1
000005FE 0A40 1021 xori.w D0, 0x1021
00000602 31C0 092E move.w [0x0000092E], D0
00000606 486E FEA8 pea.l [A6 - 0x158]
0000060A A87D syscall ClosePort
0000060C 2A6E FFFC movea.l A5, [A6 - 0x4]
00000610 21CD 0904 move.l [0x00000904 /* CurrentA5 */], A5
00000614 4E75 rts
fn00000616:
00000616 4E56 FEA8 link A6, -0x0158
0000061A 48E7 1F38 movem.l -[A7], D3,D4,D5,D6,D7,A2,A3,A4
0000061E 6100 FF70 bsr -0x8E /* 00000590 */
00000622 266E 000A movea.l A3, [A6 + 0xA]
00000626 49EE FF14 lea.l A4, [A6 - 0xEC]
0000062A 288B move.l [A4], A3
0000062C 0694 0000 0080 addi.l [A4], 0x80
00000632 397C 0004 0004 move.w [A4 + 0x4], 0x4
00000638 42AC 0006 clr.l [A4 + 0x6]
0000063C 397C 0020 000A move.w [A4 + 0xA], 0x20 /* ' ' */
00000642 397C 0020 000C move.w [A4 + 0xC], 0x20 /* ' ' */
00000648 2F0C move.l -[A7], A4
0000064A 45EE FEA8 lea.l A2, [A6 - 0x158]
0000064E 486A 0002 pea.l [A2 + 0x2]
00000652 487A 003A pea.l [PC + 0x3A /* 0000068E, value 0x0, cstring "" */]
00000656 486E FF22 pea.l [A6 - 0xDE]
0000065A 3F3C 0003 move.w -[A7], 0x3
0000065E 42A7 clr.l -[A7]
00000660 A8EC syscall CopyBits
00000662 0494 0000 0080 subi.l [A4], 0x80
00000668 2F0C move.l -[A7], A4
0000066A 486A 0002 pea.l [A2 + 0x2]
0000066E 487A 001E pea.l [PC + 0x1E /* 0000068E, value 0x0, cstring "" */]
00000672 486E FF22 pea.l [A6 - 0xDE]
00000676 3F3C 0001 move.w -[A7], 0x1
0000067A 42A7 clr.l -[A7]
0000067C A8EC syscall CopyBits
0000067E 6100 FF68 bsr -0x96 /* 000005E8 */
00000682 4CDF 1CF8 movem.l D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
00000686 4E5E unlink A6
00000688 205F movea.l A0, [A7]+
0000068A 5C8F addq.l A7, 6
0000068C 4ED0 jmp [A0]
0000068E 0000 0000 ori.b D0, 0x0
00000692 0020 0020 ori.b -[A0], 0x20 /* ' ' */
fn00000696:
00000696 4E56 FEA8 link A6, -0x0158
0000069A 48E7 1F38 movem.l -[A7], D3,D4,D5,D6,D7,A2,A3,A4
0000069E 6100 FEF0 bsr -0x10E /* 00000590 */
000006A2 486E FF22 pea.l [A6 - 0xDE]
000006A6 2F2E 000A move.l -[A7], [A6 + 0xA]
000006AA AA1F syscall PlotCIcon
000006AC 6100 FF3A bsr -0xC4 /* 000005E8 */
000006B0 4CDF 1CF8 movem.l D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
000006B4 4E5E unlink A6
000006B6 205F movea.l A0, [A7]+
000006B8 5C8F addq.l A7, 6
000006BA 4ED0 jmp [A0]
fn000006BC:
000006BC 4E56 FEFA link A6, -0x0106
000006C0 48E7 0F18 movem.l -[A7], D4,D5,D6,D7,A3,A4
000006C4 286E 000C movea.l A4, [A6 + 0xC]
000006C8 47EE FEFE lea.l A3, [A6 - 0x102]
000006CC 3E2E 0010 move.w D7, [A6 + 0x10]
000006D0 3A3C FF23 move.w D5, 0xFF23
000006D4 4246 clr.w D6
000006D6 7001 moveq.l D0, 0x01
000006D8 2F00 move.l -[A7], D0
000006DA 2F3C 0000 A800 move.l -[A7], 0xA800
000006E0 4EBA 0724 jsr [PC + 0x724 /* 00000E06 */]
000006E4 4A00 tst.b D0
000006E6 508F addq.l A7, 8
000006E8 671A beq +0x1C /* 00000704 */
000006EA 558F subq.l A7, 2
000006EC 3F07 move.w -[A7], D7
000006EE 2F0C move.l -[A7], A4
000006F0 2F2E 0008 move.l -[A7], [A6 + 0x8]
000006F4 203C 0514 0014 move.l D0, 0x5140014
000006FA A800 syscall SoundDispatch
000006FC 3D5F 0012 move.w [A6 + 0x12], [A7]+
00000700 6000 01AE bra +0x1B0 /* 000008B0 */
label00000704:
00000704 48C7 ext.l D7
00000706 4A87 tst.l D7
00000708 6D08 blt +0xA /* 00000712 */
0000070A 48C7 ext.l D7
0000070C 7003 moveq.l D0, 0x03
0000070E B087 cmp.l D0, D7
00000710 6C08 bge +0xA /* 0000071A */
label00000712:
00000712 3D45 0012 move.w [A6 + 0x12], D5
00000716 6000 0198 bra +0x19A /* 000008B0 */
label0000071A:
0000071A 558F subq.l A7, 2
0000071C A994 syscall CurResFile
0000071E 3D5F FFFE move.w [A6 - 0x2], [A7]+
00000722 558F subq.l A7, 2
00000724 7001 moveq.l D0, 0x01
00000726 3F00 move.w -[A7], D0
00000728 4EBA 08CA jsr [PC + 0x8CA /* 00000FF4 */]
0000072C 381F move.w D4, [A7]+
0000072E 3004 move.w D0, D4
00000730 48C0 ext.l D0
00000732 72FF moveq.l D1, 0xFFFFFFFF
00000734 B280 cmp.l D1, D0
00000736 660C bne +0xE /* 00000744 */
00000738 558F subq.l A7, 2
0000073A A9AF syscall ResError
0000073C 3D5F 0012 move.w [A6 + 0x12], [A7]+
00000740 6000 016E bra +0x170 /* 000008B0 */
label00000744:
00000744 48C7 ext.l D7
00000746 4A87 tst.l D7
00000748 6600 014A bne +0x14C /* 00000894 */
0000074C 598F subq.l A7, 4
0000074E 2F3C 4153 494D move.l -[A7], 0x4153494D /* 'ASIM' */
00000754 3F3C F020 move.w -[A7], 0xF020
00000758 A81F syscall Get1Resource
0000075A 2D5F FEFA move.l [A6 - 0x106], [A7]+
0000075E 6618 bne +0x1A /* 00000778 */
00000760 558F subq.l A7, 2
00000762 A9AF syscall ResError
00000764 3A1F move.w D5, [A7]+
00000766 3F2E FFFE move.w -[A7], [A6 - 0x2]
0000076A A998 syscall UseResFile
0000076C 3F04 move.w -[A7], D4
0000076E A99A syscall CloseResFile
00000770 3D45 0012 move.w [A6 + 0x12], D5
00000774 6000 013A bra +0x13C /* 000008B0 */
label00000778:
00000778 2F2E FEFA move.l -[A7], [A6 - 0x106]
0000077C 205F movea.l A0, [A7]+
0000077E A029 syscall HLock
00000780 7E01 moveq.l D7, 0x01
00000782 6028 bra +0x2A /* 000007AC */
label00000784:
00000784 2F0B move.l -[A7], A3
00000786 3F3C F020 move.w -[A7], 0xF020
0000078A 3F07 move.w -[A7], D7
0000078C 4EBA 0D08 jsr [PC + 0xD08 /* 00001496 */]
00000790 558F subq.l A7, 2
00000792 2F0B move.l -[A7], A3
00000794 206E FEFA movea.l A0, [A6 - 0x106]
00000798 2F10 move.l -[A7], [A0]
0000079A 7001 moveq.l D0, 0x01
0000079C 1F00 move.b -[A7], D0
0000079E 1F00 move.b -[A7], D0
000007A0 4EBA 0954 jsr [PC + 0x954 /* 000010F6 */]
000007A4 4A1F tst.b [A7]+
000007A6 660C bne +0xE /* 000007B4 */
000007A8 3007 move.w D0, D7
000007AA 5247 addq.w D7, 1
label000007AC:
000007AC 48C7 ext.l D7
000007AE 7003 moveq.l D0, 0x03
000007B0 B087 cmp.l D0, D7
000007B2 6CD0 bge -0x2E /* 00000784 */
label000007B4:
000007B4 2F2E FEFA move.l -[A7], [A6 - 0x106]
000007B8 205F movea.l A0, [A7]+
000007BA A02A syscall HUnlock
000007BC 2F2E FEFA move.l -[A7], [A6 - 0x106]
000007C0 A9A3 syscall ReleaseResource
000007C2 48C7 ext.l D7
000007C4 7003 moveq.l D0, 0x03
000007C6 B087 cmp.l D0, D7
000007C8 6C14 bge +0x16 /* 000007DE */
000007CA 3F2E FFFE move.w -[A7], [A6 - 0x2]
000007CE A998 syscall UseResFile
000007D0 3F04 move.w -[A7], D4
000007D2 A99A syscall CloseResFile
000007D4 3D7C FF23 0012 move.w [A6 + 0x12], 0xFF23
000007DA 6000 00D4 bra +0xD6 /* 000008B0 */
label000007DE:
000007DE 2F0B move.l -[A7], A3
000007E0 4EBA 04B2 jsr [PC + 0x4B2 /* 00000C94 */]
000007E4 3C00 move.w D6, D0
000007E6 48C0 ext.l D0
000007E8 588F addq.l A7, 4
000007EA 6744 beq +0x46 /* 00000830 */
000007EC 200C move.l D0, A4
000007EE 670C beq +0xE /* 000007FC */
000007F0 2F0C move.l -[A7], A4
000007F2 3F3C F024 move.w -[A7], 0xF024
000007F6 3F07 move.w -[A7], D7
000007F8 4EBA 0C9C jsr [PC + 0xC9C /* 00001496 */]
label000007FC:
000007FC 4AAE 0008 tst.l [A6 + 0x8]
00000800 671C beq +0x1E /* 0000081E */
00000802 598F subq.l A7, 4
00000804 2F3C 4943 4E23 move.l -[A7], 0x49434E23 /* 'ICN#' */
0000080A 48C7 ext.l D7
0000080C 2007 move.l D0, D7
0000080E D0BC FFFF F021 add.l D0, 0xFFFFF021
00000814 3F00 move.w -[A7], D0
00000816 A81F syscall Get1Resource
00000818 206E 0008 movea.l A0, [A6 + 0x8]
0000081C 209F move.l [A0], [A7]+
label0000081E:
0000081E 3F2E FFFE move.w -[A7], [A6 - 0x2]
00000822 A998 syscall UseResFile
00000824 3F04 move.w -[A7], D4
00000826 A99A syscall CloseResFile
00000828 426E 0012 clr.w [A6 + 0x12]
0000082C 6000 0082 bra +0x84 /* 000008B0 */
label00000830:
00000830 3F2E FFFE move.w -[A7], [A6 - 0x2]
00000834 A998 syscall UseResFile
00000836 3F04 move.w -[A7], D4
00000838 A99A syscall CloseResFile
0000083A 3D7C FF23 0012 move.w [A6 + 0x12], 0xFF23
00000840 606E bra +0x70 /* 000008B0 */
label00000842:
00000842 2F0B move.l -[A7], A3
00000844 3F3C F020 move.w -[A7], 0xF020
00000848 3F07 move.w -[A7], D7
0000084A 4EBA 0C4A jsr [PC + 0xC4A /* 00001496 */]
0000084E 2F0B move.l -[A7], A3
00000850 4EBA 0442 jsr [PC + 0x442 /* 00000C94 */]
00000854 3C00 move.w D6, D0
00000856 48C0 ext.l D0
00000858 588F addq.l A7, 4
0000085A 6734 beq +0x36 /* 00000890 */
0000085C 200C move.l D0, A4
0000085E 670C beq +0xE /* 0000086C */
00000860 2F0C move.l -[A7], A4
00000862 3F3C F024 move.w -[A7], 0xF024
00000866 3F07 move.w -[A7], D7
00000868 4EBA 0C2C jsr [PC + 0xC2C /* 00001496 */]
label0000086C:
0000086C 4AAE 0008 tst.l [A6 + 0x8]
00000870 671C beq +0x1E /* 0000088E */
00000872 598F subq.l A7, 4
00000874 2F3C 4943 4E23 move.l -[A7], 0x49434E23 /* 'ICN#' */
0000087A 48C7 ext.l D7
0000087C 2007 move.l D0, D7
0000087E D0BC FFFF F021 add.l D0, 0xFFFFF021
00000884 3F00 move.w -[A7], D0
00000886 A81F syscall Get1Resource
00000888 206E 0008 movea.l A0, [A6 + 0x8]
0000088C 209F move.l [A0], [A7]+
label0000088E:
0000088E 4245 clr.w D5
label00000890:
00000890 3007 move.w D0, D7
00000892 5247 addq.w D7, 1
label00000894:
00000894 48C6 ext.l D6
00000896 4A86 tst.l D6
00000898 6608 bne +0xA /* 000008A2 */
0000089A 48C7 ext.l D7
0000089C 7003 moveq.l D0, 0x03
0000089E B087 cmp.l D0, D7
000008A0 6CA0 bge -0x5E /* 00000842 */
label000008A2:
000008A2 3F2E FFFE move.w -[A7], [A6 - 0x2]
000008A6 A998 syscall UseResFile
000008A8 3F04 move.w -[A7], D4
000008AA A99A syscall CloseResFile
000008AC 3D45 0012 move.w [A6 + 0x12], D5
label000008B0:
000008B0 4CEE 18F0 FEE2 movem.l D4,D5,D6,D7,A3,A4, [A6 - 0x11E]
000008B6 4E5E unlink A6
000008B8 205F movea.l A0, [A7]+
000008BA DEFC 000A add.w A7, 0xA /* '\n' */
000008BE 4ED0 jmp [A0]
000008C0 8841 or.w D4, D1
000008C2 5349 subq.w A1, 1
000008C4 5350 subq.w [A0], 1
000008C6 4247 clr.w D7
000008C8 4500 .invalid 2, D0 // invalid opcode 4 with b == 4
000008CA 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 000008CC-000008D4
fn000008CC:
000008CC 4E56 FE00 link A6, -0x0200
000008D0 48E7 0F18 movem.l -[A7], D4,D5,D6,D7,A3,A4
// end alternate branch 000008CC-000008D4
fn000008CC: // (misaligned)
000008CE FE00 48E7 .unknown 0xFE00 0x48E7 (W = 7)
000008D2 0F18 btst [A0]+, D7
000008D4 3C2E 000C move.w D6, [A6 + 0xC]
000008D8 49EE FF00 lea.l A4, [A6 - 0x100]
000008DC 7001 moveq.l D0, 0x01
000008DE 2F00 move.l -[A7], D0
000008E0 2F3C 0000 A800 move.l -[A7], 0xA800
000008E6 4EBA 051E jsr [PC + 0x51E /* 00000E06 */]
000008EA 4A00 tst.b D0
000008EC 508F addq.l A7, 8
000008EE 671C beq +0x1E /* 0000090C */
000008F0 558F subq.l A7, 2
000008F2 2F2E 000E move.l -[A7], [A6 + 0xE]
000008F6 3F06 move.w -[A7], D6
000008F8 2F2E 0008 move.l -[A7], [A6 + 0x8]
000008FC 203C 0518 0014 move.l D0, 0x5180014
00000902 A800 syscall SoundDispatch
00000904 3D5F 0012 move.w [A6 + 0x12], [A7]+
00000908 6000 016E bra +0x170 /* 00000A78 */
label0000090C:
0000090C 4AAE 000E tst.l [A6 + 0xE]
00000910 670A beq +0xC /* 0000091C */
00000912 206E 000E movea.l A0, [A6 + 0xE]
00000916 7000 moveq.l D0, 0x00
00000918 1010 move.b D0, [A0]
0000091A 6622 bne +0x24 /* 0000093E */
label0000091C:
0000091C 558F subq.l A7, 2
0000091E 7000 moveq.l D0, 0x00
00000920 3F00 move.w -[A7], D0
00000922 486E FE00 pea.l [A6 - 0x200]
00000926 7200 moveq.l D1, 0x00
00000928 2F01 move.l -[A7], D1
0000092A 4EBA FD90 jsr [PC - 0x270 /* 000006BC */]
0000092E 381F move.w D4, [A7]+
00000930 3004 move.w D0, D4
00000932 48C0 ext.l D0
00000934 6716 beq +0x18 /* 0000094C */
00000936 3D44 0012 move.w [A6 + 0x12], D4
0000093A 6000 013C bra +0x13E /* 00000A78 */
label0000093E:
0000093E 2F2E 000E move.l -[A7], [A6 + 0xE]
00000942 486E FE00 pea.l [A6 - 0x200]
00000946 4EBA 0486 jsr [PC + 0x486 /* 00000DCE */]
0000094A 508F addq.l A7, 8
label0000094C:
0000094C 558F subq.l A7, 2
0000094E A994 syscall CurResFile
00000950 3A1F move.w D5, [A7]+
00000952 558F subq.l A7, 2
00000954 7001 moveq.l D0, 0x01
00000956 3F00 move.w -[A7], D0
00000958 4EBA 069A jsr [PC + 0x69A /* 00000FF4 */]
0000095C 381F move.w D4, [A7]+
0000095E 3004 move.w D0, D4
00000960 48C0 ext.l D0
00000962 72FF moveq.l D1, 0xFFFFFFFF
00000964 B280 cmp.l D1, D0
00000966 660C bne +0xE /* 00000974 */
00000968 558F subq.l A7, 2
0000096A A9AF syscall ResError
0000096C 3D5F 0012 move.w [A6 + 0x12], [A7]+
00000970 6000 0106 bra +0x108 /* 00000A78 */
label00000974:
00000974 7E01 moveq.l D7, 0x01
00000976 6026 bra +0x28 /* 0000099E */
label00000978:
00000978 2F0C move.l -[A7], A4
0000097A 3F3C F024 move.w -[A7], 0xF024
0000097E 3F07 move.w -[A7], D7
00000980 4EBA 0B14 jsr [PC + 0xB14 /* 00001496 */]
00000984 558F subq.l A7, 2
00000986 2F0C move.l -[A7], A4
00000988 486E FE00 pea.l [A6 - 0x200]
0000098C 7001 moveq.l D0, 0x01
0000098E 1F00 move.b -[A7], D0
00000990 1F00 move.b -[A7], D0
00000992 4EBA 0762 jsr [PC + 0x762 /* 000010F6 */]
00000996 4A1F tst.b [A7]+
00000998 660C bne +0xE /* 000009A6 */
0000099A 3007 move.w D0, D7
0000099C 5247 addq.w D7, 1
label0000099E:
0000099E 48C7 ext.l D7
000009A0 7003 moveq.l D0, 0x03
000009A2 B087 cmp.l D0, D7
000009A4 6CD2 bge -0x2C /* 00000978 */
label000009A6:
000009A6 2F0C move.l -[A7], A4
000009A8 3F3C F020 move.w -[A7], 0xF020
000009AC 3F07 move.w -[A7], D7
000009AE 4EBA 0AE6 jsr [PC + 0xAE6 /* 00001496 */]
000009B2 3F05 move.w -[A7], D5
000009B4 A998 syscall UseResFile
000009B6 3F04 move.w -[A7], D4
000009B8 A99A syscall CloseResFile
000009BA 48C7 ext.l D7
000009BC 7003 moveq.l D0, 0x03
000009BE B087 cmp.l D0, D7
000009C0 6C0A bge +0xC /* 000009CC */
000009C2 3D7C FF23 0012 move.w [A6 + 0x12], 0xFF23
000009C8 6000 00AE bra +0xB0 /* 00000A78 */
label000009CC:
000009CC 2F0C move.l -[A7], A4
000009CE 4EBA 02C4 jsr [PC + 0x2C4 /* 00000C94 */]
000009D2 3A00 move.w D5, D0
000009D4 48C0 ext.l D0
000009D6 588F addq.l A7, 4
000009D8 6700 0098 beq +0x9A /* 00000A72 */
000009DC 48C6 ext.l D6
000009DE 0806 0000 btst.b D6, 0x0
000009E2 674E beq +0x50 /* 00000A32 */
000009E4 598F subq.l A7, 4
000009E6 3F05 move.w -[A7], D5
000009E8 4EBA 074C jsr [PC + 0x74C /* 00001136 */]
000009EC 285F movea.l A4, [A7]+
000009EE 200C move.l D0, A4
000009F0 6608 bne +0xA /* 000009FA */
000009F2 3D7C FF1C 0012 move.w [A6 + 0x12], 0xFF1C
000009F8 607E bra +0x80 /* 00000A78 */
label000009FA:
000009FA 2054 movea.l A0, [A4]
000009FC 2668 0008 movea.l A3, [A0 + 0x8]
00000A00 6020 bra +0x22 /* 00000A22 */
label00000A02:
00000A02 302B 0006 move.w D0, [A3 + 0x6]
00000A06 48C0 ext.l D0
00000A08 223C 0000 F9FF move.l D1, 0xF9FF
00000A0E C280 and.l D1, D0
00000A10 0C81 0000 A002 cmpi.l D1, 0xA002
00000A16 6608 bne +0xA /* 00000A20 */
00000A18 3D7C FF1D 0012 move.w [A6 + 0x12], 0xFF1D
00000A1E 6058 bra +0x5A /* 00000A78 */
label00000A20:
00000A20 2653 movea.l A3, [A3]
label00000A22:
00000A22 200B move.l D0, A3
00000A24 670C beq +0xE /* 00000A32 */
00000A26 302B 0004 move.w D0, [A3 + 0x4]
00000A2A 48C0 ext.l D0
00000A2C 7202 moveq.l D1, 0x02
00000A2E B280 cmp.l D1, D0
00000A30 67D0 beq -0x2E /* 00000A02 */
label00000A32:
00000A32 48C6 ext.l D6
00000A34 7010 moveq.l D0, 0x10
00000A36 2206 move.l D1, D6
00000A38 E1A9 lsl D1, D0
00000A3A 48C5 ext.l D5
00000A3C 203C 0000 FFFF move.l D0, 0xFFFF
00000A42 C085 and.l D0, D5
00000A44 8081 or.l D0, D1
00000A46 206E 0008 movea.l A0, [A6 + 0x8]
00000A4A 2080 move.l [A0], D0
00000A4C 48C6 ext.l D6
00000A4E 0806 0000 btst.b D6, 0x0
00000A52 6718 beq +0x1A /* 00000A6C */
00000A54 558F subq.l A7, 2
00000A56 206E 0008 movea.l A0, [A6 + 0x8]
00000A5A 2F10 move.l -[A7], [A0]
00000A5C 2F3C 696E 6974 move.l -[A7], 0x696E6974 /* 'init' */
00000A62 7000 moveq.l D0, 0x00
00000A64 2F00 move.l -[A7], D0
00000A66 4EBA 0112 jsr [PC + 0x112 /* 00000B7A */]
00000A6A 548F addq.l A7, 2
label00000A6C:
00000A6C 426E 0012 clr.w [A6 + 0x12]
00000A70 6006 bra +0x8 /* 00000A78 */
label00000A72:
00000A72 3D7C FF1C 0012 move.w [A6 + 0x12], 0xFF1C
label00000A78:
00000A78 4CEE 18F0 FDE8 movem.l D4,D5,D6,D7,A3,A4, [A6 - 0x218]
00000A7E 4E5E unlink A6
00000A80 205F movea.l A0, [A7]+
00000A82 DEFC 000A add.w A7, 0xA /* '\n' */
00000A86 4ED0 jmp [A0]
00000A88 8841 or.w D4, D1
00000A8A 5349 subq.w A1, 1
00000A8C 5350 subq.w [A0], 1
00000A8E 424F clr.w A7
00000A90 5000 addq.b D0, 8
00000A92 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000A94-00000A9A
fn00000A94:
00000A94 4E56 0000 link A6, 0
00000A98 2F07 move.l -[A7], D7
// end alternate branch 00000A94-00000A9A
fn00000A94: // (misaligned)
00000A96 0000 2F07 ori.b D0, 0x7
00000A9A 2E2E 0008 move.l D7, [A6 + 0x8]
00000A9E 7001 moveq.l D0, 0x01
00000AA0 2F00 move.l -[A7], D0
00000AA2 2F3C 0000 A800 move.l -[A7], 0xA800
00000AA8 4EBA 035C jsr [PC + 0x35C /* 00000E06 */]
00000AAC 4A00 tst.b D0
00000AAE 508F addq.l A7, 8
00000AB0 6712 beq +0x14 /* 00000AC4 */
00000AB2 558F subq.l A7, 2
00000AB4 2F07 move.l -[A7], D7
00000AB6 203C 021C 0014 move.l D0, 0x21C0014
00000ABC A800 syscall SoundDispatch
00000ABE 3D5F 000C move.w [A6 + 0xC], [A7]+
00000AC2 6026 bra +0x28 /* 00000AEA */
label00000AC4:
00000AC4 7010 moveq.l D0, 0x10
00000AC6 2207 move.l D1, D7
00000AC8 E0A1 asr D1, D0
00000ACA 48C1 ext.l D1
00000ACC 0801 0000 btst.b D1, 0x0
00000AD0 6714 beq +0x16 /* 00000AE6 */
00000AD2 558F subq.l A7, 2
00000AD4 2F07 move.l -[A7], D7
00000AD6 2F3C 636C 6F73 move.l -[A7], 0x636C6F73 /* 'clos' */
00000ADC 7000 moveq.l D0, 0x00
00000ADE 2F00 move.l -[A7], D0
00000AE0 4EBA 0098 jsr [PC + 0x98 /* 00000B7A */]
00000AE4 548F addq.l A7, 2
label00000AE6:
00000AE6 426E 000C clr.w [A6 + 0xC]
label00000AEA:
00000AEA 2E2E FFFC move.l D7, [A6 - 0x4]
00000AEE 4E5E unlink A6
00000AF0 2E9F move.l [A7], [A7]+
00000AF2 4E75 rts
00000AF4 8841 or.w D4, D1
00000AF6 5349 subq.w A1, 1
00000AF8 5350 subq.w [A0], 1
00000AFA 4243 clr.w D3
00000AFC 4C00 0000 movem.w <none>, D0
fn00000B00:
00000B00 4E56 0000 link A6, 0
00000B04 48E7 0310 movem.l -[A7], D6,D7,A3
00000B08 266E 0008 movea.l A3, [A6 + 0x8]
00000B0C 2C2E 000C move.l D6, [A6 + 0xC]
00000B10 2E2E 0010 move.l D7, [A6 + 0x10]
00000B14 7001 moveq.l D0, 0x01
00000B16 2F00 move.l -[A7], D0
00000B18 2F3C 0000 A800 move.l -[A7], 0xA800
00000B1E 4EBA 02E6 jsr [PC + 0x2E6 /* 00000E06 */]
00000B22 4A00 tst.b D0
00000B24 508F addq.l A7, 8
00000B26 6716 beq +0x18 /* 00000B3E */
00000B28 558F subq.l A7, 2
00000B2A 2F07 move.l -[A7], D7
00000B2C 2F06 move.l -[A7], D6
00000B2E 2F0B move.l -[A7], A3
00000B30 203C 0638 0014 move.l D0, 0x6380014
00000B36 A800 syscall SoundDispatch
00000B38 3D5F 0014 move.w [A6 + 0x14], [A7]+
00000B3C 6020 bra +0x22 /* 00000B5E */
label00000B3E:
00000B3E 7000 moveq.l D0, 0x00
00000B40 2F00 move.l -[A7], D0
00000B42 2F0B move.l -[A7], A3
00000B44 2F06 move.l -[A7], D6
00000B46 223C 0000 FFFF move.l D1, 0xFFFF
00000B4C C287 and.l D1, D7
00000B4E 48C1 ext.l D1
00000B50 2F01 move.l -[A7], D1
00000B52 4EBA 01D0 jsr [PC + 0x1D0 /* 00000D24 */]
00000B56 3D40 0014 move.w [A6 + 0x14], D0
00000B5A 4FEF 0010 lea.l A7, [A7 + 0x10]
label00000B5E:
00000B5E 4CEE 08C0 FFF4 movem.l D6,D7,A3, [A6 - 0xC]
00000B64 4E5E unlink A6
00000B66 205F movea.l A0, [A7]+
00000B68 DEFC 000C add.w A7, 0xC
00000B6C 4ED0 jmp [A0]
00000B6E 8841 or.w D4, D1
00000B70 5349 subq.w A1, 1
00000B72 5350 subq.w [A0], 1
00000B74 4247 clr.w D7
00000B76 4500 .invalid 2, D0 // invalid opcode 4 with b == 4
00000B78 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000B7A-00000B7E
fn00000B7A:
00000B7A 4E56 FFCE link A6, -0x0032
// end alternate branch 00000B7A-00000B7E
fn00000B7A: // (misaligned)
00000B7C FFCE .invalid <<F/7/7>>
00000B7E 48E7 0318 movem.l -[A7], D6,D7,A3,A4
00000B82 286E 0008 movea.l A4, [A6 + 0x8]
00000B86 2C2E 000C move.l D6, [A6 + 0xC]
00000B8A 2E2E 0010 move.l D7, [A6 + 0x10]
00000B8E 7001 moveq.l D0, 0x01
00000B90 2F00 move.l -[A7], D0
00000B92 2F3C 0000 A800 move.l -[A7], 0xA800
00000B98 4EBA 026C jsr [PC + 0x26C /* 00000E06 */]
00000B9C 4A00 tst.b D0
00000B9E 508F addq.l A7, 8
00000BA0 6716 beq +0x18 /* 00000BB8 */
00000BA2 558F subq.l A7, 2
00000BA4 2F07 move.l -[A7], D7
00000BA6 2F06 move.l -[A7], D6
00000BA8 2F0C move.l -[A7], A4
00000BAA 203C 063C 0014 move.l D0, 0x63C0014
00000BB0 A800 syscall SoundDispatch
00000BB2 3D5F 0014 move.w [A6 + 0x14], [A7]+
00000BB6 6070 bra +0x72 /* 00000C28 */
label00000BB8:
00000BB8 7010 moveq.l D0, 0x10
00000BBA 2207 move.l D1, D7
00000BBC E0A1 asr D1, D0
00000BBE 48C1 ext.l D1
00000BC0 7001 moveq.l D0, 0x01
00000BC2 C081 and.l D0, D1
00000BC4 6608 bne +0xA /* 00000BCE */
00000BC6 3D7C FF1D 0014 move.w [A6 + 0x14], 0xFF1D
00000BCC 605A bra +0x5C /* 00000C28 */
label00000BCE:
00000BCE 7000 moveq.l D0, 0x00
00000BD0 2D40 FFCE move.l [A6 - 0x32], D0
00000BD4 426E FFD2 clr.w [A6 - 0x2E]
00000BD8 426E FFD4 clr.w [A6 - 0x2C]
00000BDC 2D40 FFD6 move.l [A6 - 0x2A], D0
00000BE0 2D40 FFDA move.l [A6 - 0x26], D0
00000BE4 426E FFDE clr.w [A6 - 0x22]
00000BE8 2D40 FFE0 move.l [A6 - 0x20], D0
00000BEC 426E FFE4 clr.w [A6 - 0x1C]
00000BF0 223C 0000 FFFF move.l D1, 0xFFFF
00000BF6 C287 and.l D1, D7
00000BF8 3D41 FFE6 move.w [A6 - 0x1A], D1
00000BFC 3D7C 0002 FFE8 move.w [A6 - 0x18], 0x2
00000C02 47EE FFEA lea.l A3, [A6 - 0x16]
00000C06 2686 move.l [A3], D6
00000C08 2F0C move.l -[A7], A4
00000C0A 486B 0004 pea.l [A3 + 0x4]
00000C0E 7212 moveq.l D1, 0x12
00000C10 2F01 move.l -[A7], D1
00000C12 4EBA 0490 jsr [PC + 0x490 /* 000010A4 */]
00000C16 558F subq.l A7, 2
00000C18 486E FFCE pea.l [A6 - 0x32]
00000C1C 7000 moveq.l D0, 0x00
00000C1E 1F00 move.b -[A7], D0
00000C20 4EBA 052E jsr [PC + 0x52E /* 00001150 */]
00000C24 3D5F 0014 move.w [A6 + 0x14], [A7]+
label00000C28:
00000C28 4CEE 18C0 FFBE movem.l D6,D7,A3,A4, [A6 - 0x42]
00000C2E 4E5E unlink A6
00000C30 205F movea.l A0, [A7]+
00000C32 DEFC 000C add.w A7, 0xC
00000C36 4ED0 jmp [A0]
00000C38 8841 or.w D4, D1
00000C3A 5349 subq.w A1, 1
00000C3C 5350 subq.w [A0], 1
00000C3E 4253 clr.w [A3]
00000C40 4500 .invalid 2, D0 // invalid opcode 4 with b == 4
00000C42 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000C44-00000C4A
fn00000C44:
00000C44 4E56 0000 link A6, 0
00000C48 2F0B move.l -[A7], A3
// end alternate branch 00000C44-00000C4A
fn00000C44: // (misaligned)
00000C46 0000 2F0B ori.b D0, 0xB
00000C4A 266E 0008 movea.l A3, [A6 + 0x8]
00000C4E 7001 moveq.l D0, 0x01
00000C50 2F00 move.l -[A7], D0
00000C52 2F3C 0000 A800 move.l -[A7], 0xA800
00000C58 4EBA 01AC jsr [PC + 0x1AC /* 00000E06 */]
00000C5C 4A00 tst.b D0
00000C5E 508F addq.l A7, 8
00000C60 6716 beq +0x18 /* 00000C78 */
00000C62 558F subq.l A7, 2
00000C64 3F2E 000C move.w -[A7], [A6 + 0xC]
00000C68 2F0B move.l -[A7], A3
00000C6A 203C 030C 0014 move.l D0, 0x30C0014
00000C70 A800 syscall SoundDispatch
00000C72 3D5F 000E move.w [A6 + 0xE], [A7]+
00000C76 6004 bra +0x6 /* 00000C7C */
label00000C78:
00000C78 426E 000E clr.w [A6 + 0xE]
label00000C7C:
00000C7C 266E FFFC movea.l A3, [A6 - 0x4]
00000C80 4E5E unlink A6
00000C82 205F movea.l A0, [A7]+
00000C84 5C4F addq.w A7, 6
00000C86 4ED0 jmp [A0]
00000C88 8841 or.w D4, D1
00000C8A 5349 subq.w A1, 1
00000C8C 5350 subq.w [A0], 1
00000C8E 4253 clr.w [A3]
00000C90 4900 .invalid 4, D0 // invalid opcode 4 with b == 4
00000C92 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000C94-00000C98
fn00000C94:
00000C94 4E56 FFFC link A6, -0x0004
// end alternate branch 00000C94-00000C98
fn00000C94: // (misaligned)
00000C96 FFFC .invalid <<F/7/7>>
00000C98 48E7 0318 movem.l -[A7], D6,D7,A3,A4
00000C9C 3C38 01D2 move.w D6, [0x000001D2 /* UnitNtryCnt */]
00000CA0 7EF4 moveq.l D7, 0xFFFFFFF4
00000CA2 605C bra +0x5E /* 00000D00 */
label00000CA4:
00000CA4 598F subq.l A7, 4
00000CA6 3F07 move.w -[A7], D7
00000CA8 4EBA 048C jsr [PC + 0x48C /* 00001136 */]
00000CAC 265F movea.l A3, [A7]+
00000CAE 200B move.l D0, A3
00000CB0 674A beq +0x4C /* 00000CFC */
00000CB2 2053 movea.l A0, [A3]
00000CB4 4A90 tst.l [A0]
00000CB6 6744 beq +0x46 /* 00000CFC */
00000CB8 2053 movea.l A0, [A3]
00000CBA 3028 0004 move.w D0, [A0 + 0x4]
00000CBE 48C0 ext.l D0
00000CC0 7240 moveq.l D1, 0x40
00000CC2 C280 and.l D1, D0
00000CC4 6708 beq +0xA /* 00000CCE */
00000CC6 2053 movea.l A0, [A3]
00000CC8 2050 movea.l A0, [A0]
00000CCA 2850 movea.l A4, [A0]
00000CCC 6004 bra +0x6 /* 00000CD2 */
label00000CCE:
00000CCE 2053 movea.l A0, [A3]
00000CD0 2850 movea.l A4, [A0]
label00000CD2:
00000CD2 200C move.l D0, A4
00000CD4 6726 beq +0x28 /* 00000CFC */
00000CD6 200C move.l D0, A4
00000CD8 7212 moveq.l D1, 0x12
00000CDA D081 add.l D0, D1
00000CDC 2D40 FFFC move.l [A6 - 0x4], D0
00000CE0 558F subq.l A7, 2
00000CE2 2F2E FFFC move.l -[A7], [A6 - 0x4]
00000CE6 2F2E 0008 move.l -[A7], [A6 + 0x8]
00000CEA 7000 moveq.l D0, 0x00
00000CEC 1F00 move.b -[A7], D0
00000CEE 1F00 move.b -[A7], D0
00000CF0 4EBA 0404 jsr [PC + 0x404 /* 000010F6 */]
00000CF4 4A1F tst.b [A7]+
00000CF6 6704 beq +0x6 /* 00000CFC */
00000CF8 3007 move.w D0, D7
00000CFA 6012 bra +0x14 /* 00000D0E */
label00000CFC:
00000CFC 3007 move.w D0, D7
00000CFE 5347 subq.w D7, 1
label00000D00:
00000D00 48C7 ext.l D7
00000D02 48C6 ext.l D6
00000D04 2006 move.l D0, D6
00000D06 4480 neg.l D0
00000D08 B087 cmp.l D0, D7
00000D0A 6F98 ble -0x66 /* 00000CA4 */
00000D0C 7000 moveq.l D0, 0x00
label00000D0E:
00000D0E 4CEE 18C0 FFEC movem.l D6,D7,A3,A4, [A6 - 0x14]
00000D14 4E5E unlink A6
00000D16 4E75 rts
00000D18 8847 or.w D4, D7
00000D1A 6574 bcs +0x76 /* 00000D90 */
00000D1C 4472 7672 neg.w [A2 + D7.w * 8 + 0x72]
00000D20 5200 addq.b D0, 1
00000D22 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000D24-00000D28
fn00000D24:
00000D24 4E56 FFCE link A6, -0x0032
// end alternate branch 00000D24-00000D28
fn00000D24: // (misaligned)
00000D26 FFCE .invalid <<F/7/7>>
00000D28 48E7 0110 movem.l -[A7], D7,A3
00000D2C 7000 moveq.l D0, 0x00
00000D2E 2D40 FFCE move.l [A6 - 0x32], D0
00000D32 426E FFD2 clr.w [A6 - 0x2E]
00000D36 426E FFD4 clr.w [A6 - 0x2C]
00000D3A 2D40 FFD6 move.l [A6 - 0x2A], D0
00000D3E 2D40 FFDA move.l [A6 - 0x26], D0
00000D42 426E FFDE clr.w [A6 - 0x22]
00000D46 2D40 FFE0 move.l [A6 - 0x20], D0
00000D4A 426E FFE4 clr.w [A6 - 0x1C]
00000D4E 3D6E 000A FFE6 move.w [A6 - 0x1A], [A6 + 0xA]
00000D54 3D7C 0002 FFE8 move.w [A6 - 0x18], 0x2
00000D5A 47EE FFEA lea.l A3, [A6 - 0x16]
00000D5E 26AE 000C move.l [A3], [A6 + 0xC]
00000D62 486E 0010 pea.l [A6 + 0x10]
00000D66 486B 0004 pea.l [A3 + 0x4]
00000D6A 7204 moveq.l D1, 0x04
00000D6C 2F01 move.l -[A7], D1
00000D6E 4EBA 0334 jsr [PC + 0x334 /* 000010A4 */]
00000D72 4A2E 0017 tst.b [A6 + 0x17]
00000D76 6710 beq +0x12 /* 00000D88 */
00000D78 486E FFCE pea.l [A6 - 0x32]
00000D7C 206F 0000 movea.l A0, [A7 + 0x0]
00000D80 A205 syscall Status, flags=2
00000D82 3E00 move.w D7, D0
00000D84 588F addq.l A7, 4
00000D86 6010 bra +0x12 /* 00000D98 */
label00000D88:
00000D88 558F subq.l A7, 2
00000D8A 486E FFCE pea.l [A6 - 0x32]
00000D8E 7000 moveq.l D0, 0x00
label00000D90:
00000D90 1F00 move.b -[A7], D0
00000D92 4EBA 03CE jsr [PC + 0x3CE /* 00001162 */]
00000D96 3E1F move.w D7, [A7]+
label00000D98:
00000D98 48C7 ext.l D7
00000D9A 4A87 tst.l D7
00000D9C 6618 bne +0x1A /* 00000DB6 */
00000D9E 4A93 tst.l [A3]
00000DA0 6F14 ble +0x16 /* 00000DB6 */
00000DA2 7012 moveq.l D0, 0x12
00000DA4 B093 cmp.l D0, [A3]
00000DA6 6D0E blt +0x10 /* 00000DB6 */
00000DA8 486B 0004 pea.l [A3 + 0x4]
00000DAC 2F2E 0010 move.l -[A7], [A6 + 0x10]
00000DB0 2F13 move.l -[A7], [A3]
00000DB2 4EBA 02F0 jsr [PC + 0x2F0 /* 000010A4 */]
label00000DB6:
00000DB6 3007 move.w D0, D7
00000DB8 4CEE 0880 FFC6 movem.l D7,A3, [A6 - 0x3A]
00000DBE 4E5E unlink A6
00000DC0 4E75 rts
00000DC2 8869 6E6E or.w D4, [A1 + 0x6E6E]
00000DC6 6572 bcs +0x74 /* 00000E3A */
00000DC8 5350 subq.w [A0], 1
00000DCA 4200 clr.b D0
00000DCC 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000DCE-00000DD6
fn00000DCE:
00000DCE 4E56 0000 link A6, 0
00000DD2 48E7 0118 movem.l -[A7], D7,A3,A4
// end alternate branch 00000DCE-00000DD6
fn00000DCE: // (misaligned)
00000DD0 0000 48E7 ori.b D0, 0xE7
00000DD4 0118 btst [A0]+, D0
00000DD6 286E 0008 movea.l A4, [A6 + 0x8]
00000DDA 266E 000C movea.l A3, [A6 + 0xC]
00000DDE 7000 moveq.l D0, 0x00
00000DE0 1013 move.b D0, [A3]
00000DE2 3E00 move.w D7, D0
00000DE4 6002 bra +0x4 /* 00000DE8 */
label00000DE6:
00000DE6 18DB move.b [A4]+, [A3]+
label00000DE8:
00000DE8 3007 move.w D0, D7
00000DEA 5347 subq.w D7, 1
00000DEC 48C0 ext.l D0
00000DEE 6CF6 bge -0x8 /* 00000DE6 */
00000DF0 4CEE 1880 FFF4 movem.l D7,A3,A4, [A6 - 0xC]
00000DF6 4E5E unlink A6
00000DF8 4E75 rts
00000DFA 8870 7374 or.w D4, <<invalid full ext with I/IS == 4>>
00000DFE 7263 moveq.l D1, 0x63
00000E00 7079 moveq.l D0, 0x79
00000E02 4200 clr.b D0
00000E04 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000E06-00000E0C
fn00000E06:
00000E06 4E56 0000 link A6, 0
00000E0A 598F subq.l A7, 4
// end alternate branch 00000E06-00000E0C
fn00000E06: // (misaligned)
00000E08 0000 598F ori.b D0, 0x8F
00000E0C 3F2E 000A move.w -[A7], [A6 + 0xA]
00000E10 1F2E 000F move.b -[A7], [A6 + 0xF]
00000E14 4EBA 02CC jsr [PC + 0x2CC /* 000010E2 */]
00000E18 598F subq.l A7, 4
00000E1A 3F3C A89F move.w -[A7], 0xA89F
00000E1E 4EBA 02B8 jsr [PC + 0x2B8 /* 000010D8 */]
00000E22 201F move.l D0, [A7]+
00000E24 B09F cmp.l D0, [A7]+
00000E26 56C0 sne D0
00000E28 4400 neg.b D0
00000E2A 4E5E unlink A6
00000E2C 4E75 rts
00000E2E 8854 or.w D4, [A4]
00000E30 7261 moveq.l D1, 0x61
00000E32 7041 moveq.l D0, 0x41
00000E34 7661 moveq.l D3, 0x61
00000E36 6900 0000 bvs +0x2 /* 00000E38 */
// begin alternate branch 00000E38-00000E3E
label00000E38:
00000E38 0000 4E56 ori.b D0, 0x56 /* 'V' */
fn00000E3A: // (misaligned)
00000E3C FFCC .invalid <<F/7/7>>
// end alternate branch 00000E38-00000E3E
label00000E38: // (misaligned)
fn00000E3A:
00000E3A 4E56 FFCC link A6, -0x0034
00000E3E 48E7 0118 movem.l -[A7], D7,A3,A4
00000E42 286E 000C movea.l A4, [A6 + 0xC]
00000E46 266E 0008 movea.l A3, [A6 + 0x8]
00000E4A 7000 moveq.l D0, 0x00
00000E4C 2D40 FFDE move.l [A6 - 0x22], D0
00000E50 426E FFE2 clr.w [A6 - 0x1E]
00000E54 3D7C 0001 FFE6 move.w [A6 - 0x1A], 0x1
00000E5A 2D40 FFE8 move.l [A6 - 0x18], D0
00000E5E 558F subq.l A7, 2
00000E60 486E FFCC pea.l [A6 - 0x34]
00000E64 7200 moveq.l D1, 0x00
00000E66 1F01 move.b -[A7], D1
00000E68 4EBA 038A jsr [PC + 0x38A /* 000011F4 */]
00000E6C 3E1F move.w D7, [A7]+
00000E6E 3007 move.w D0, D7
00000E70 48C0 ext.l D0
00000E72 6608 bne +0xA /* 00000E7C */
00000E74 36AE FFEC move.w [A3], [A6 - 0x14]
00000E78 28AE FFFC move.l [A4], [A6 - 0x4]
label00000E7C:
00000E7C 3007 move.w D0, D7
00000E7E 4CEE 1880 FFC0 movem.l D7,A3,A4, [A6 - 0x40]
00000E84 4E5E unlink A6
00000E86 4E75 rts
00000E88 8853 or.w D4, [A3]
00000E8A 7065 moveq.l D0, 0x65
00000E8C 6369 bls +0x6B /* 00000EF7 */
00000E8E 616C bsr +0x6E /* 00000EFC */
00000E90 4400 neg.b D0
00000E92 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000E94-00000E98
fn00000E94:
00000E94 4E56 FFEC link A6, -0x0014
// end alternate branch 00000E94-00000E98
fn00000E94: // (misaligned)
00000E96 FFEC .invalid <<F/7/7>>
00000E98 48E7 0318 movem.l -[A7], D6,D7,A3,A4
00000E9C 2E2E 0010 move.l D7, [A6 + 0x10]
00000EA0 286E 000C movea.l A4, [A6 + 0xC]
00000EA4 266E 0008 movea.l A3, [A6 + 0x8]
00000EA8 4246 clr.w D6
00000EAA 3013 move.w D0, [A3]
00000EAC 48C0 ext.l D0
00000EAE 6676 bne +0x78 /* 00000F26 */
00000EB0 4A94 tst.l [A4]
00000EB2 6672 bne +0x74 /* 00000F26 */
00000EB4 558F subq.l A7, 2
00000EB6 7001 moveq.l D0, 0x01
00000EB8 3F00 move.w -[A7], D0
00000EBA 486E FFF0 pea.l [A6 - 0x10]
00000EBE 4EBA 061C jsr [PC + 0x61C /* 000014DC */]
00000EC2 301F move.w D0, [A7]+
00000EC4 48C0 ext.l D0
00000EC6 6704 beq +0x6 /* 00000ECC */
00000EC8 426E FFF4 clr.w [A6 - 0xC]
label00000ECC:
00000ECC 0C87 4E4F 4E45 cmpi.l D7, 0x4E4F4E45 /* 'NONE' */
00000ED2 6746 beq +0x48 /* 00000F1A */
00000ED4 302E FFF4 move.w D0, [A6 - 0xC]
00000ED8 48C0 ext.l D0
00000EDA 0C80 0000 0700 cmpi.l D0, 0x700
00000EE0 6D38 blt +0x3A /* 00000F1A */
00000EE2 2F3C 666F 6C64 move.l -[A7], 0x666F6C64 /* 'fold' */
00000EE8 486E FFEC pea.l [A6 - 0x14]
00000EEC 202F 0004 move.l D0, [A7 + 0x4]
00000EF0 A1AD syscall Gestalt, flags=1
00000EF2 226F 0000 movea.l A1, [A7 + 0x0]
00000EF6 2288 move.l [A1], A0
00000EF8 508F addq.l A7, 8
00000EFA 7001 moveq.l D0, 0x01
fn00000EFC:
00000EFC B0AE FFEC cmp.l D0, [A6 - 0x14]
00000F00 6618 bne +0x1A /* 00000F1A */
00000F02 558F subq.l A7, 2
00000F04 3F3C 8000 move.w -[A7], 0x8000
00000F08 2F07 move.l -[A7], D7
00000F0A 7001 moveq.l D0, 0x01
00000F0C 1F00 move.b -[A7], D0
00000F0E 2F0B move.l -[A7], A3
00000F10 2F0C move.l -[A7], A4
00000F12 7000 moveq.l D0, 0x00
00000F14 A823 syscall AliasDispatch
00000F16 301F move.w D0, [A7]+
00000F18 600E bra +0x10 /* 00000F28 */
label00000F1A:
00000F1A 2F0C move.l -[A7], A4
00000F1C 2F0B move.l -[A7], A3
00000F1E 4EBA FF1A jsr [PC - 0xE6 /* 00000E3A */]
00000F22 508F addq.l A7, 8
00000F24 6002 bra +0x4 /* 00000F28 */
label00000F26:
00000F26 3006 move.w D0, D6
label00000F28:
00000F28 4CEE 18C0 FFDC movem.l D6,D7,A3,A4, [A6 - 0x24]
00000F2E 4E5E unlink A6
00000F30 4E75 rts
00000F32 8850 or.w D4, [A0]
00000F34 6170 bsr +0x72 /* 00000FA6 */
00000F36 616C bsr +0x6E /* 00000FA4 */
00000F38 4469 7300 neg.w [A1 + 0x7300]
00000F3C 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00000F3E-00000F42
fn00000F3E:
00000F3E 4E56 FFC4 link A6, -0x003C
// end alternate branch 00000F3E-00000F42
fn00000F3E: // (misaligned)
00000F40 FFC4 .invalid <<F/7/7>>
00000F42 48E7 0018 movem.l -[A7], A3,A4
00000F46 286E 0008 movea.l A4, [A6 + 0x8]
00000F4A 266E 000C movea.l A3, [A6 + 0xC]
00000F4E 426E FFC4 clr.w [A6 - 0x3C]
00000F52 7000 moveq.l D0, 0x00
00000F54 2D40 FFC6 move.l [A6 - 0x3A], D0
00000F58 36BC FFFF move.w [A3], 0xFFFF
00000F5C 2F2E 0014 move.l -[A7], [A6 + 0x14]
00000F60 486E FFC6 pea.l [A6 - 0x3A]
00000F64 486E FFC4 pea.l [A6 - 0x3C]
00000F68 4EBA FF2A jsr [PC - 0xD6 /* 00000E94 */]
00000F6C 3D40 FFFE move.w [A6 - 0x2], D0
00000F70 48C0 ext.l D0
00000F72 4FEF 000C lea.l A7, [A7 + 0xC]
00000F76 6706 beq +0x8 /* 00000F7E */
00000F78 302E FFFE move.w D0, [A6 - 0x2]
00000F7C 6060 bra +0x62 /* 00000FDE */
label00000F7E:
00000F7E 558F subq.l A7, 2
00000F80 7000 moveq.l D0, 0x00
00000F82 2F00 move.l -[A7], D0
00000F84 486E FFFE pea.l [A6 - 0x2]
00000F88 4EBA 0204 jsr [PC + 0x204 /* 0000118E */]
00000F8C 7000 moveq.l D0, 0x00
00000F8E 2D40 FFDC move.l [A6 - 0x24], D0
00000F92 3D6E FFC4 FFE0 move.w [A6 - 0x20], [A6 - 0x3C]
00000F98 2D6E FFC6 FFFA move.l [A6 - 0x6], [A6 - 0x3A]
00000F9E 558F subq.l A7, 2
00000FA0 486E FFCA pea.l [A6 - 0x36]
fn00000FA4:
00000FA4 7200 moveq.l D1, 0x00
fn00000FA6:
00000FA6 1F01 move.b -[A7], D1
00000FA8 4EBA 0226 jsr [PC + 0x226 /* 000011D0 */]
00000FAC 558F subq.l A7, 2
00000FAE 3F2E FFC4 move.w -[A7], [A6 - 0x3C]
00000FB2 2F2E FFC6 move.l -[A7], [A6 - 0x3A]
00000FB6 598F subq.l A7, 4
00000FB8 2F0C move.l -[A7], A4
00000FBA 4EBA 0898 jsr [PC + 0x898 /* 00001854 */]
00000FBE 1F2E 0013 move.b -[A7], [A6 + 0x13]
00000FC2 4EBA 0394 jsr [PC + 0x394 /* 00001358 */]
00000FC6 369F move.w [A3], [A7]+
00000FC8 558F subq.l A7, 2
00000FCA 7000 moveq.l D0, 0x00
00000FCC 2F00 move.l -[A7], D0
00000FCE 3F2E FFFE move.w -[A7], [A6 - 0x2]
00000FD2 4EBA 01DC jsr [PC + 0x1DC /* 000011B0 */]
00000FD6 558F subq.l A7, 2
00000FD8 A9AF syscall ResError
00000FDA 301F move.w D0, [A7]+
00000FDC 5C8F addq.l A7, 6
label00000FDE:
00000FDE 4CEE 1800 FFBC movem.l A3,A4, [A6 - 0x44]
00000FE4 4E5E unlink A6
00000FE6 4E75 rts
00000FE8 884F or.w D4, A7
00000FEA 7065 moveq.l D0, 0x65
00000FEC 6E52 bgt +0x54 /* 00001040 */
00000FEE 6573 bcs +0x75 /* 00001063 */
00000FF0 6F00 0000 ble +0x2 /* 00000FF2 */
// begin alternate branch 00000FF2-00000FF8
label00000FF2:
00000FF2 0000 4E56 ori.b D0, 0x56 /* 'V' */
fn00000FF4: // (misaligned)
00000FF6 FFF0 .invalid <<F/7/7>>
// end alternate branch 00000FF2-00000FF8
label00000FF2: // (misaligned)
fn00000FF4:
00000FF4 4E56 FFF0 link A6, -0x0010
00000FF8 48E7 0110 movem.l -[A7], D7,A3
00000FFC 3E2E 0008 move.w D7, [A6 + 0x8]
00001000 47EE FFF2 lea.l A3, [A6 - 0xE]
00001004 16BC 000C move.b [A3], 0xC
00001008 177C 0056 0001 move.b [A3 + 0x1], 0x56 /* 'V' */
0000100E 177C 006F 0002 move.b [A3 + 0x2], 0x6F /* 'o' */
00001014 177C 0069 0003 move.b [A3 + 0x3], 0x69 /* 'i' */
0000101A 177C 0063 0004 move.b [A3 + 0x4], 0x63 /* 'c' */
00001020 177C 0065 0005 move.b [A3 + 0x5], 0x65 /* 'e' */
00001026 177C 0020 0006 move.b [A3 + 0x6], 0x20 /* ' ' */
0000102C 177C 0052 0007 move.b [A3 + 0x7], 0x52 /* 'R' */
00001032 177C 0065 0008 move.b [A3 + 0x8], 0x65 /* 'e' */
00001038 177C 0063 0009 move.b [A3 + 0x9], 0x63 /* 'c' */
0000103E 177C 006F 000A move.b [A3 + 0xA], 0x6F /* 'o' */
// begin alternate branch 00001040-00001050
label00001040:
00001040 006F 000A 177C ori.w [A7 + 0x177C], 0xA /* '\n' */
00001046 0072 000B 177C ori.w <<invalid full ext with I/IS == 4>>, 0xB
0000104C 0064 000C ori.w -[A4], 0xC
// end alternate branch 00001040-00001050
label00001040: // (misaligned)
00001044 177C 0072 000B move.b [A3 + 0xB], 0x72 /* 'r' */
0000104A 177C 0064 000C move.b [A3 + 0xC], 0x64 /* 'd' */
00001050 2F3C 4E4F 4E45 move.l -[A7], 0x4E4F4E45 /* 'NONE' */
00001056 48C7 ext.l D7
00001058 2F07 move.l -[A7], D7
0000105A 486E FFF0 pea.l [A6 - 0x10]
0000105E 2F0B move.l -[A7], A3
00001060 4EBA FEDC jsr [PC - 0x124 /* 00000F3E */]
00001064 48C0 ext.l D0
00001066 4FEF 0010 lea.l A7, [A7 + 0x10]
0000106A 6718 beq +0x1A /* 00001084 */
0000106C 2F3C 6374 726C move.l -[A7], 0x6374726C /* 'ctrl' */
00001072 48C7 ext.l D7
00001074 2F07 move.l -[A7], D7
00001076 486E FFF0 pea.l [A6 - 0x10]
0000107A 2F0B move.l -[A7], A3
0000107C 4EBA FEC0 jsr [PC - 0x140 /* 00000F3E */]
00001080 4FEF 0010 lea.l A7, [A7 + 0x10]
label00001084:
00001084 3D6E FFF0 000A move.w [A6 + 0xA], [A6 - 0x10]
0000108A 4CEE 0880 FFE8 movem.l D7,A3, [A6 - 0x18]
00001090 4E5E unlink A6
00001092 205F movea.l A0, [A7]+
00001094 544F addq.w A7, 2
00001096 4ED0 jmp [A0]
00001098 8841 or.w D4, D1
0000109A 5349 subq.w A1, 1
0000109C 4F50 chk.w D7, [A0]
0000109E 454E chk.w D2, A6
000010A0 5200 addq.b D0, 1
000010A2 0000 221F ori.b D0, 0x1F
// begin alternate branch 000010A4-000010A6
fn000010A4:
000010A4 221F move.l D1, [A7]+
// end alternate branch 000010A4-000010A6
fn000010A4: // (misaligned)
000010A6 201F move.l D0, [A7]+
000010A8 225F movea.l A1, [A7]+
000010AA 205F movea.l A0, [A7]+
000010AC A02E syscall BlockMove/BlockMoveData
000010AE 2241 movea.l A1, D1
000010B0 4ED1 jmp [A1]
fn000010B2:
000010B2 7018 moveq.l D0, 0x18
label000010B4:
000010B4 4267 clr.w -[A7]
000010B6 51C8 FFFC dbf D0, -0x6 /* 000010B4 */
000010BA 2F6F 003A 0012 move.l [A7 + 0x12], [A7 + 0x3A]
000010C0 204F movea.l A0, A7
000010C2 A000 syscall Open/PBHOpen/HOpen
000010C4 206F 0036 movea.l A0, [A7 + 0x36]
000010C8 30AF 0018 move.w [A0], [A7 + 0x18]
000010CC 206F 0032 movea.l A0, [A7 + 0x32]
000010D0 4FEF 003E lea.l A7, [A7 + 0x3E]
000010D4 3E80 move.w [A7], D0
000010D6 4ED0 jmp [A0]
fn000010D8:
000010D8 225F movea.l A1, [A7]+
000010DA 301F move.w D0, [A7]+
000010DC A146 syscall GetTrapAddress, flags=1
000010DE 2E88 move.l [A7], A0
000010E0 4ED1 jmp [A1]
fn000010E2:
000010E2 225F movea.l A1, [A7]+
000010E4 121F move.b D1, [A7]+
000010E6 301F move.w D0, [A7]+
000010E8 4A01 tst.b D1
000010EA 6704 beq +0x6 /* 000010F0 */
000010EC A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
000010EE 6002 bra +0x4 /* 000010F2 */
label000010F0:
000010F0 A346 syscall GetOSTrapAddress, flags=3
label000010F2:
000010F2 2E88 move.l [A7], A0
000010F4 4ED1 jmp [A1]
fn000010F6:
000010F6 206F 000C movea.l A0, [A7 + 0xC]
000010FA 226F 0008 movea.l A1, [A7 + 0x8]
000010FE 7000 moveq.l D0, 0x00
00001100 1018 move.b D0, [A0]+
00001102 4840 swap.w D0
00001104 1019 move.b D0, [A1]+
00001106 4A2F 0004 tst.b [A7 + 0x4]
0000110A 670E beq +0x10 /* 0000111A */
0000110C 4A2F 0006 tst.b [A7 + 0x6]
00001110 6704 beq +0x6 /* 00001116 */
00001112 A43C syscall CmpString, flags=4
00001114 6010 bra +0x12 /* 00001126 */
label00001116:
00001116 A03C syscall CmpString
00001118 600C bra +0xE /* 00001126 */
label0000111A:
0000111A 4A2F 0006 tst.b [A7 + 0x6]
0000111E 6704 beq +0x6 /* 00001124 */
00001120 A63C syscall CmpString, flags=6
00001122 6002 bra +0x4 /* 00001126 */
label00001124:
00001124 A23C syscall CmpString, flags=2
label00001126:
00001126 0A00 0001 xori.b D0, 0x1
0000112A 1F40 0010 move.b [A7 + 0x10], D0
0000112E 205F movea.l A0, [A7]+
00001130 4FEF 000C lea.l A7, [A7 + 0xC]
00001134 4ED0 jmp [A0]
fn00001136:
00001136 205F movea.l A0, [A7]+
00001138 301F move.w D0, [A7]+
0000113A 4297 clr.l [A7]
0000113C 4640 not.w D0
0000113E B078 01D2 cmp.w D0, [0x000001D2 /* UnitNtryCnt */]
00001142 640A bcc +0xC /* 0000114E */
00001144 E548 lsl D0.w, 2
00001146 2278 011C movea.l A1, [0x0000011C /* UTableBase */]
0000114A 2EB1 0000 move.l [A7], [A1 + D0.w]
label0000114E:
0000114E 4ED0 jmp [A0]
fn00001150:
00001150 225F movea.l A1, [A7]+
00001152 101F move.b D0, [A7]+
00001154 205F movea.l A0, [A7]+
00001156 6604 bne +0x6 /* 0000115C */
00001158 A004 syscall Control
0000115A 6002 bra +0x4 /* 0000115E */
label0000115C:
0000115C A404 syscall Control, flags=4
label0000115E:
0000115E 3E80 move.w [A7], D0
00001160 4ED1 jmp [A1]
fn00001162:
00001162 225F movea.l A1, [A7]+
00001164 101F move.b D0, [A7]+
00001166 205F movea.l A0, [A7]+
00001168 6604 bne +0x6 /* 0000116E */
0000116A A005 syscall Status
0000116C 6002 bra +0x4 /* 00001170 */
label0000116E:
0000116E A405 syscall Status, flags=4
label00001170:
00001170 3E80 move.w [A7], D0
00001172 4ED1 jmp [A1]
fn00001174:
00001174 4E56 FFCE link A6, -0x0032
00001178 204F movea.l A0, A7
0000117A 316E 0008 0018 move.w [A0 + 0x18], [A6 + 0x8]
00001180 A001 syscall Close
00001182 3D40 000A move.w [A6 + 0xA], D0
00001186 4E5E unlink A6
00001188 205F movea.l A0, [A7]+
0000118A 548F addq.l A7, 2
0000118C 4ED0 jmp [A0]
fn0000118E:
0000118E 4E56 FFC0 link A6, -0x0040
00001192 204F movea.l A0, A7
00001194 216E 000C 0012 move.l [A0 + 0x12], [A6 + 0xC]
0000119A A014 syscall GetVol/PBHGetVol/HGetVol
0000119C 3D40 0010 move.w [A6 + 0x10], D0
000011A0 226E 0008 movea.l A1, [A6 + 0x8]
000011A4 32A8 0016 move.w [A1], [A0 + 0x16]
000011A8 4E5E unlink A6
000011AA 225F movea.l A1, [A7]+
000011AC 508F addq.l A7, 8
000011AE 4ED1 jmp [A1]
fn000011B0:
000011B0 4E56 FFC0 link A6, -0x0040
000011B4 204F movea.l A0, A7
000011B6 216E 000A 0012 move.l [A0 + 0x12], [A6 + 0xA]
000011BC 316E 0008 0016 move.w [A0 + 0x16], [A6 + 0x8]
000011C2 A015 syscall SetVol/PBHSetVol/HSetVol
000011C4 3D40 000E move.w [A6 + 0xE], D0
000011C8 4E5E unlink A6
000011CA 225F movea.l A1, [A7]+
000011CC 5C8F addq.l A7, 6
000011CE 4ED1 jmp [A1]
fn000011D0:
000011D0 225F movea.l A1, [A7]+
000011D2 101F move.b D0, [A7]+
000011D4 205F movea.l A0, [A7]+
000011D6 6604 bne +0x6 /* 000011DC */
000011D8 A215 syscall SetVol/PBHSetVol/HSetVol, flags=2
000011DA 6002 bra +0x4 /* 000011DE */
label000011DC:
000011DC A615 syscall SetVol/PBHSetVol/HSetVol, flags=6
label000011DE:
000011DE 3E80 move.w [A7], D0
000011E0 4ED1 jmp [A1]
fn000011E2:
000011E2 225F movea.l A1, [A7]+
000011E4 101F move.b D0, [A7]+
000011E6 205F movea.l A0, [A7]+
000011E8 6604 bne +0x6 /* 000011EE */
000011EA A214 syscall GetVol/PBHGetVol/HGetVol, flags=2
000011EC 6002 bra +0x4 /* 000011F0 */
label000011EE:
000011EE A614 syscall GetVol/PBHGetVol/HGetVol, flags=6
label000011F0:
000011F0 3E80 move.w [A7], D0
000011F2 4ED1 jmp [A1]
fn000011F4:
000011F4 225F movea.l A1, [A7]+
000011F6 101F move.b D0, [A7]+
000011F8 205F movea.l A0, [A7]+
000011FA 6606 bne +0x8 /* 00001202 */
000011FC 7007 moveq.l D0, 0x07
000011FE A260 syscall FSDispatch/HFSDispatch, flags=2
00001200 6004 bra +0x6 /* 00001206 */
label00001202:
00001202 7007 moveq.l D0, 0x07
00001204 A660 syscall FSDispatch/HFSDispatch, flags=6
label00001206:
00001206 3E80 move.w [A7], D0
00001208 4ED1 jmp [A1]
fn0000120A:
0000120A 225F movea.l A1, [A7]+
0000120C 101F move.b D0, [A7]+
0000120E 205F movea.l A0, [A7]+
00001210 6604 bne +0x6 /* 00001216 */
00001212 A20A syscall OpenRF/PBHOpenRF/HOpenRF, flags=2
00001214 6002 bra +0x4 /* 00001218 */
label00001216:
00001216 A60A syscall OpenRF/PBHOpenRF/HOpenRF, flags=6
label00001218:
00001218 3E80 move.w [A7], D0
0000121A 4ED1 jmp [A1]
fn0000121C:
0000121C 4E56 FFCC link A6, -0x0034
00001220 2F07 move.l -[A7], D7
00001222 2D6E 0010 FFDE move.l [A6 - 0x22], [A6 + 0x10]
00001228 558F subq.l A7, 2
0000122A 486E FFCC pea.l [A6 - 0x34]
0000122E 7000 moveq.l D0, 0x00
00001230 1F00 move.b -[A7], D0
00001232 4EBA FFAE jsr [PC - 0x52 /* 000011E2 */]
00001236 3E1F move.w D7, [A7]+
00001238 206E 000C movea.l A0, [A6 + 0xC]
0000123C 30AE FFE2 move.w [A0], [A6 - 0x1E]
00001240 206E 0008 movea.l A0, [A6 + 0x8]
00001244 20AE FFFC move.l [A0], [A6 - 0x4]
00001248 3D47 0014 move.w [A6 + 0x14], D7
0000124C 2E2E FFC8 move.l D7, [A6 - 0x38]
00001250 4E5E unlink A6
00001252 205F movea.l A0, [A7]+
00001254 4FEF 000C lea.l A7, [A7 + 0xC]
00001258 4ED0 jmp [A0]
0000125A 8748 4745 pack -[A3], -[A0], 0x4745
0000125E 5456 addq.w [A6], 2
00001260 4F4C chk.w D7, A4
00001262 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00001264-00001268
fn00001264:
00001264 4E56 FFCC link A6, -0x0034
// end alternate branch 00001264-00001268
fn00001264: // (misaligned)
00001266 FFCC .invalid <<F/7/7>>
00001268 2D6E 000E FFDE move.l [A6 - 0x22], [A6 + 0xE]
0000126E 3D6E 000C FFE2 move.w [A6 - 0x1E], [A6 + 0xC]
00001274 2D6E 0008 FFFC move.l [A6 - 0x4], [A6 + 0x8]
0000127A 558F subq.l A7, 2
0000127C 486E FFCC pea.l [A6 - 0x34]
00001280 7000 moveq.l D0, 0x00
00001282 1F00 move.b -[A7], D0
00001284 4EBA FF4A jsr [PC - 0xB6 /* 000011D0 */]
00001288 3D5F 0012 move.w [A6 + 0x12], [A7]+
0000128C 4E5E unlink A6
0000128E 205F movea.l A0, [A7]+
00001290 4FEF 000A lea.l A7, [A7 + 0xA]
00001294 4ED0 jmp [A0]
00001296 8748 5345 pack -[A3], -[A0], 0x5345
0000129A 5456 addq.w [A6], 2
0000129C 4F4C chk.w D7, A4
0000129E 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 000012A0-000012A4
fn000012A0:
000012A0 4E56 FF86 link A6, -0x007A
// end alternate branch 000012A0-000012A4
fn000012A0: // (misaligned)
000012A2 FF86 .invalid <<F/6/7>>
000012A4 2F07 move.l -[A7], D7
000012A6 3D6E 0016 FF9C move.w [A6 - 0x64], [A6 + 0x16]
000012AC 2D6E 0012 FFB6 move.l [A6 - 0x4A], [A6 + 0x12]
000012B2 2D6E 000E FF98 move.l [A6 - 0x68], [A6 + 0xE]
000012B8 422E FFA0 clr.b [A6 - 0x60]
000012BC 1D6E 000C FFA1 move.b [A6 - 0x5F], [A6 + 0xC]
000012C2 7000 moveq.l D0, 0x00
000012C4 2D40 FFA2 move.l [A6 - 0x5E], D0
000012C8 558F subq.l A7, 2
000012CA 486E FF86 pea.l [A6 - 0x7A]
000012CE 7000 moveq.l D0, 0x00
000012D0 1F00 move.b -[A7], D0
000012D2 4EBA FF36 jsr [PC - 0xCA /* 0000120A */]
000012D6 3E1F move.w D7, [A7]+
000012D8 206E 0008 movea.l A0, [A6 + 0x8]
000012DC 30AE FF9E move.w [A0], [A6 - 0x62]
000012E0 3D47 0018 move.w [A6 + 0x18], D7
000012E4 2E2E FF82 move.l D7, [A6 - 0x7E]
000012E8 4E5E unlink A6
000012EA 205F movea.l A0, [A7]+
000012EC 4FEF 0010 lea.l A7, [A7 + 0x10]
000012F0 4ED0 jmp [A0]
000012F2 8748 4F50 pack -[A3], -[A0], 0x4F50
000012F6 454E chk.w D2, A6
000012F8 5246 addq.w D6, 1
000012FA 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 000012FC-00001300
fn000012FC:
000012FC 4E56 FFCC link A6, -0x0034
// end alternate branch 000012FC-00001300
fn000012FC: // (misaligned)
000012FE FFCC .invalid <<F/7/7>>
00001300 2F07 move.l -[A7], D7
00001302 3D6E 0014 FFE2 move.w [A6 - 0x1E], [A6 + 0x14]
00001308 426E FFE6 clr.w [A6 - 0x1A]
0000130C 7000 moveq.l D0, 0x00
0000130E 2D40 FFDE move.l [A6 - 0x22], D0
00001312 558F subq.l A7, 2
00001314 486E FFCC pea.l [A6 - 0x34]
00001318 7000 moveq.l D0, 0x00
0000131A 1F00 move.b -[A7], D0
0000131C 4EBA FED6 jsr [PC - 0x12A /* 000011F4 */]
00001320 3E1F move.w D7, [A7]+
00001322 206E 0010 movea.l A0, [A6 + 0x10]
00001326 30AE FFEC move.w [A0], [A6 - 0x14]
0000132A 206E 000C movea.l A0, [A6 + 0xC]
0000132E 20AE FFFC move.l [A0], [A6 - 0x4]
00001332 206E 0008 movea.l A0, [A6 + 0x8]
00001336 20AE FFE8 move.l [A0], [A6 - 0x18]
0000133A 3D47 0016 move.w [A6 + 0x16], D7
0000133E 2E2E FFC8 move.l D7, [A6 - 0x38]
00001342 4E5E unlink A6
00001344 205F movea.l A0, [A7]+
00001346 4FEF 000E lea.l A7, [A7 + 0xE]
0000134A 4ED0 jmp [A0]
0000134C 8947 4554 pack D4, D7, 0x4554
00001350 5744 subq.w D4, 3
00001352 494E chk.w D4, A6
00001354 464F not.w A7
00001356 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00001358-0000135C
fn00001358:
00001358 4E56 FFE8 link A6, -0x0018
// end alternate branch 00001358-0000135C
fn00001358: // (misaligned)
0000135A FFE8 .invalid <<F/7/7>>
0000135C 48E7 0F08 movem.l -[A7], D4,D5,D6,D7,A4
00001360 182E 0008 move.b D4, [A6 + 0x8]
00001364 286E 000A movea.l A4, [A6 + 0xA]
00001368 2A2E 000E move.l D5, [A6 + 0xE]
0000136C 3C2E 0012 move.w D6, [A6 + 0x12]
00001370 0C78 0600 015A cmpi.w [0x0000015A /* SysVersion */], 0x600
00001376 6D34 blt +0x36 /* 000013AC */
00001378 303C A89F move.w D0, 0xA89F
0000137C A146 syscall GetTrapAddress, flags=1
0000137E 2D48 FFE8 move.l [A6 - 0x18], A0
00001382 598F subq.l A7, 4
00001384 3F3C A81A move.w -[A7], 0xA81A
00001388 7001 moveq.l D0, 0x01
0000138A 1F00 move.b -[A7], D0
0000138C 4EBA FD54 jsr [PC - 0x2AC /* 000010E2 */]
00001390 202E FFE8 move.l D0, [A6 - 0x18]
00001394 B09F cmp.l D0, [A7]+
00001396 6714 beq +0x16 /* 000013AC */
00001398 558F subq.l A7, 2
0000139A 3F06 move.w -[A7], D6
0000139C 2F05 move.l -[A7], D5
0000139E 2F0C move.l -[A7], A4
000013A0 1F04 move.b -[A7], D4
000013A2 A81A syscall HOpenResFile
000013A4 3D5F 0014 move.w [A6 + 0x14], [A7]+
000013A8 6000 00CC bra +0xCE /* 00001476 */
label000013AC:
000013AC 3D7C FFFF FFEC move.w [A6 - 0x14], 0xFFFF
000013B2 558F subq.l A7, 2
000013B4 3F06 move.w -[A7], D6
000013B6 2F05 move.l -[A7], D5
000013B8 2F0C move.l -[A7], A4
000013BA 1F04 move.b -[A7], D4
000013BC 486E FFEE pea.l [A6 - 0x12]
000013C0 4EBA FEDE jsr [PC - 0x122 /* 000012A0 */]
000013C4 3E1F move.w D7, [A7]+
000013C6 660C bne +0xE /* 000013D4 */
000013C8 558F subq.l A7, 2
000013CA 3F2E FFEE move.w -[A7], [A6 - 0x12]
000013CE 4EBA FDA4 jsr [PC - 0x25C /* 00001174 */]
000013D2 3E1F move.w D7, [A7]+
label000013D4:
000013D4 4A47 tst.w D7
000013D6 6708 beq +0xA /* 000013E0 */
000013D8 0C47 FFCF cmpi.w D7, 0xFFCF
000013DC 6600 008E bne +0x90 /* 0000146C */
label000013E0:
000013E0 558F subq.l A7, 2
000013E2 7000 moveq.l D0, 0x00
000013E4 2F00 move.l -[A7], D0
000013E6 486E FFF0 pea.l [A6 - 0x10]
000013EA 486E FFF2 pea.l [A6 - 0xE]
000013EE 4EBA FE2C jsr [PC - 0x1D4 /* 0000121C */]
000013F2 3E1F move.w D7, [A7]+
000013F4 6676 bne +0x78 /* 0000146C */
000013F6 558F subq.l A7, 2
000013F8 3F2E FFF0 move.w -[A7], [A6 - 0x10]
000013FC 486E FFF6 pea.l [A6 - 0xA]
00001400 486E FFF8 pea.l [A6 - 0x8]
00001404 486E FFFC pea.l [A6 - 0x4]
00001408 4EBA FEF2 jsr [PC - 0x10E /* 000012FC */]
0000140C 3E1F move.w D7, [A7]+
0000140E 665C bne +0x5E /* 0000146C */
00001410 558F subq.l A7, 2
00001412 7000 moveq.l D0, 0x00
00001414 2F00 move.l -[A7], D0
00001416 3F06 move.w -[A7], D6
00001418 2F05 move.l -[A7], D5
0000141A 4EBA FE48 jsr [PC - 0x1B8 /* 00001264 */]
0000141E 3E1F move.w D7, [A7]+
00001420 6616 bne +0x18 /* 00001438 */
00001422 558F subq.l A7, 2
00001424 2F0C move.l -[A7], A4
00001426 7000 moveq.l D0, 0x00
00001428 3F00 move.w -[A7], D0
0000142A 1F04 move.b -[A7], D4
0000142C A9C4 syscall OpenRFPerm
0000142E 3D5F FFEC move.w [A6 - 0x14], [A7]+
00001432 558F subq.l A7, 2
00001434 A9AF syscall ResError
00001436 3E1F move.w D7, [A7]+
label00001438:
00001438 7002 moveq.l D0, 0x02
0000143A B0AE FFF8 cmp.l D0, [A6 - 0x8]
0000143E 6616 bne +0x18 /* 00001456 */
00001440 558F subq.l A7, 2
00001442 7000 moveq.l D0, 0x00
00001444 2F00 move.l -[A7], D0
00001446 3F2E FFF0 move.w -[A7], [A6 - 0x10]
0000144A 2F2E FFF2 move.l -[A7], [A6 - 0xE]
0000144E 4EBA FE14 jsr [PC - 0x1EC /* 00001264 */]
00001452 381F move.w D4, [A7]+
00001454 6010 bra +0x12 /* 00001466 */
label00001456:
00001456 558F subq.l A7, 2
00001458 7000 moveq.l D0, 0x00
0000145A 2F00 move.l -[A7], D0
0000145C 3F2E FFF0 move.w -[A7], [A6 - 0x10]
00001460 4EBA FD4E jsr [PC - 0x2B2 /* 000011B0 */]
00001464 381F move.w D4, [A7]+
label00001466:
00001466 4A47 tst.w D7
00001468 6602 bne +0x4 /* 0000146C */
0000146A 3E04 move.w D7, D4
label0000146C:
0000146C 31C7 0A60 move.w [0x00000A60 /* ResErr */], D7
00001470 3D6E FFEC 0014 move.w [A6 + 0x14], [A6 - 0x14]
label00001476:
00001476 4CEE 10F0 FFD4 movem.l D4,D5,D6,D7,A4, [A6 - 0x2C]
0000147C 4E5E unlink A6
0000147E 205F movea.l A0, [A7]+
00001480 4FEF 000C lea.l A7, [A7 + 0xC]
00001484 4ED0 jmp [A0]
00001486 8C48 or.w D6, A0
00001488 4F50 chk.w D7, [A0]
0000148A 454E chk.w D2, A6
0000148C 5245 addq.w D5, 1
0000148E 5346 subq.w D6, 1
00001490 494C chk.w D4, A4
00001492 4500 .invalid 2, D0 // invalid opcode 4 with b == 4
00001494 0000 4E56 ori.b D0, 0x56 /* 'V' */
// begin alternate branch 00001496-0000149C
fn00001496:
00001496 4E56 0000 link A6, 0
0000149A 594F subq.w A7, 4
// end alternate branch 00001496-0000149C
fn00001496: // (misaligned)
00001498 0000 594F ori.b D0, 0x4F /* 'O' */
0000149C 2F3C 5354 5223 move.l -[A7], 0x53545223 /* 'STR#' */
000014A2 3F2E 000A move.w -[A7], [A6 + 0xA]
000014A6 A9A0 syscall GetResource
000014A8 226E 000C movea.l A1, [A6 + 0xC]
000014AC 4211 clr.b [A1]
000014AE 201F move.l D0, [A7]+
000014B0 6722 beq +0x24 /* 000014D4 */
000014B2 2040 movea.l A0, D0
000014B4 2050 movea.l A0, [A0]
000014B6 3018 move.w D0, [A0]+
000014B8 322E 0008 move.w D1, [A6 + 0x8]
000014BC 6716 beq +0x18 /* 000014D4 */
000014BE B240 cmp.w D1, D0
000014C0 6212 bhi +0x14 /* 000014D4 */
000014C2 7000 moveq.l D0, 0x00
label000014C4:
000014C4 5341 subq.w D1, 1
000014C6 6706 beq +0x8 /* 000014CE */
000014C8 1018 move.b D0, [A0]+
000014CA D1C0 add.l A0, D0
000014CC 60F6 bra -0x8 /* 000014C4 */
label000014CE:
000014CE 1010 move.b D0, [A0]
000014D0 5240 addq.w D0, 1
000014D2 A02E syscall BlockMove/BlockMoveData
label000014D4:
000014D4 4E5E unlink A6
000014D6 205F movea.l A0, [A7]+
000014D8 508F addq.l A7, 8
000014DA 4ED0 jmp [A0]
fn000014DC:
000014DC 4A78 028E tst.w [0x0000028E /* ROM85 */]
000014E0 6B22 bmi +0x24 /* 00001504 */
000014E2 303C 0090 move.w D0, 0x90
000014E6 A346 syscall GetOSTrapAddress, flags=3
000014E8 2248 movea.l A1, A0
000014EA 303C 009F move.w D0, 0x9F
000014EE A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
000014F0 B3C8 cmpa.l A1, A0
000014F2 6710 beq +0x12 /* 00001504 */
000014F4 225F movea.l A1, [A7]+
000014F6 205F movea.l A0, [A7]+
000014F8 301F move.w D0, [A7]+
000014FA 2F09 move.l -[A7], A1
000014FC A090 syscall SysEnvirons
000014FE 3F40 0004 move.w [A7 + 0x4], D0
00001502 4E75 rts
label00001504:
00001504 206F 0004 movea.l A0, [A7 + 0x4]
00001508 303C 0001 move.w D0, 0x1
0000150C 2248 movea.l A1, A0
0000150E 6006 bra +0x8 /* 00001516 */
00001510 0313 btst [A3], D1
00001512 0B02 btst D2, D5
00001514 0100 btst D0, D0
label00001516:
00001516 303C 0010 move.w D0, 0x10
0000151A E240 asr D0.w, 1
0000151C 5340 subq.w D0, 1
label0000151E:
0000151E 4258 clr.w [A0]+
00001520 51C8 FFFC dbf D0, -0x6 /* 0000151E */
00001524 32BC 0001 move.w [A1], 0x1
00001528 2078 02AE movea.l A0, [0x000002AE /* ROMBase */]
0000152C 337C FFFE 0002 move.w [A1 + 0x2], 0xFFFE
00001532 0C28 00FF 0009 cmpi.b [A0 + 0x9], 0xFF
00001538 6742 beq +0x44 /* 0000157C */
0000153A 4A28 0008 tst.b [A0 + 0x8]
0000153E 6E20 bgt +0x22 /* 00001560 */
00001540 337C FFFF 0002 move.w [A1 + 0x2], 0xFFFF
00001546 4A78 028E tst.w [0x0000028E /* ROM85 */]
0000154A 6B30 bmi +0x32 /* 0000157C */
0000154C 337C 0001 0002 move.w [A1 + 0x2], 0x1
00001552 4A78 0B22 tst.w [0x00000B22 /* HWCfgFlags */]
00001556 6A24 bpl +0x26 /* 0000157C */
00001558 337C 0002 0002 move.w [A1 + 0x2], 0x2
0000155E 601C bra +0x1E /* 0000157C */
label00001560:
00001560 4269 0002 clr.w [A1 + 0x2]
00001564 0C28 0002 0008 cmpi.b [A0 + 0x8], 0x2
0000156A 6E10 bgt +0x12 /* 0000157C */
0000156C 6708 beq +0xA /* 00001576 */
0000156E 337C 0004 0002 move.w [A1 + 0x2], 0x4
00001574 6006 bra +0x8 /* 0000157C */
label00001576:
00001576 337C 0003 0002 move.w [A1 + 0x2], 0x3
label0000157C:
0000157C 4269 0004 clr.w [A1 + 0x4]
00001580 0C38 0002 012F cmpi.b [0x0000012F /* CPUFlag */], 0x2
00001586 6E0A bgt +0xC /* 00001592 */
00001588 1038 012F move.b D0, [0x0000012F /* CPUFlag */]
0000158C 5240 addq.w D0, 1
0000158E 1340 0007 move.b [A1 + 0x7], D0
label00001592:
00001592 4A78 028E tst.w [0x0000028E /* ROM85 */]
00001596 6B0E bmi +0x10 /* 000015A6 */
00001598 0838 0004 0B22 btst.b [0x00000B22 /* HWCfgFlags */], 0x4
0000159E 6706 beq +0x8 /* 000015A6 */
000015A0 137C 0001 0008 move.b [A1 + 0x8], 0x1
label000015A6:
000015A6 0C78 3FFF 028E cmpi.w [0x0000028E /* ROM85 */], 0x3FFF
000015AC 6206 bhi +0x8 /* 000015B4 */
000015AE 137C 0001 0009 move.b [A1 + 0x9], 0x1
label000015B4:
000015B4 1038 021E move.b D0, [0x0000021E /* KbdType */]
000015B8 41FA FF5B lea.l A0, [PC - 0xA5 /* 00001515, value 0x303C00 '0<\0', cstring "" */]
000015BC 323C 0004 move.w D1, 0x4
label000015C0:
000015C0 B020 cmp.b D0, -[A0]
000015C2 57C9 FFFC dbeq D1, -0x6 /* 000015C0 */
000015C6 5241 addq.w D1, 1
000015C8 3341 000A move.w [A1 + 0xA], D1
000015CC 4A38 0291 tst.b [0x00000291 /* PortBUse */]
000015D0 6B18 bmi +0x1A /* 000015EA */
000015D2 1238 01FB move.b D1, [0x000001FB /* SPConfig */]
000015D6 0201 000F andi.b D1, 0xF
000015DA 0C01 0001 cmpi.b D1, 0x1
000015DE 660A bne +0xC /* 000015EA */
000015E0 2078 02DC movea.l A0, [0x000002DC /* ABusDCE */]
000015E4 1368 0007 000D move.b [A1 + 0xD], [A0 + 0x7]
label000015EA:
000015EA 3378 0210 000E move.w [A1 + 0xE], [0x00000210 /* BootDrive */]
000015F0 4A78 03F6 tst.w [0x000003F6 /* FSFCBLen */]
000015F4 6D44 blt +0x46 /* 0000163A */
000015F6 4269 000E clr.w [A1 + 0xE]
000015FA 323C 003C move.w D1, 0x3C /* '<' */
label000015FE:
000015FE 4267 clr.w -[A7]
00001600 51C9 FFFC dbf D1, -0x6 /* 000015FE */
00001604 204F movea.l A0, A7
00001606 3178 0A58 0018 move.w [A0 + 0x18], [0x00000A58 /* SysMap */]
0000160C 7008 moveq.l D0, 0x08
0000160E A260 syscall FSDispatch/HFSDispatch, flags=2
00001610 6624 bne +0x26 /* 00001636 */
00001612 3168 0034 0016 move.w [A0 + 0x16], [A0 + 0x34]
00001618 A207 syscall GetVolInfo/PBHGetVInfo/HGetVInfo, flags=2
0000161A 661A bne +0x1C /* 00001636 */
0000161C 2168 005A 0030 move.l [A0 + 0x30], [A0 + 0x5A]
00001622 217C 4552 494B 001C move.l [A0 + 0x1C], 0x4552494B /* 'ERIK' */
0000162A 7001 moveq.l D0, 0x01
0000162C A260 syscall FSDispatch/HFSDispatch, flags=2
0000162E 6606 bne +0x8 /* 00001636 */
00001630 3368 0016 000E move.w [A1 + 0xE], [A0 + 0x16]
label00001636:
00001636 4FEF 007A lea.l A7, [A7 + 0x7A]
label0000163A:
0000163A 2049 movea.l A0, A1
0000163C 225F movea.l A1, [A7]+
0000163E 5C4F addq.w A7, 6
00001640 3EBC EA84 move.w [A7], 0xEA84
00001644 4ED1 jmp [A1]
fn00001646:
00001646 4E56 0000 link A6, 0
0000164A 203C 0000 A89F move.l D0, 0xA89F
00001650 A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
00001652 2F08 move.l -[A7], A0
00001654 203C 0000 A0AD move.l D0, 0xA0AD
0000165A A346 syscall GetOSTrapAddress, flags=3
0000165C B1DF cmpa.l A0, [A7]+
0000165E 670E beq +0x10 /* 0000166E */
00001660 202E 000C move.l D0, [A6 + 0xC]
00001664 A1AD syscall Gestalt, flags=1
00001666 226E 0008 movea.l A1, [A6 + 0x8]
0000166A 2288 move.l [A1], A0
0000166C 6026 bra +0x28 /* 00001694 */
label0000166E:
0000166E 41FA 0036 lea.l A0, [PC + 0x36 /* 000016A6, value 0x76657273 'vers', cstring "vers" */]
00001672 303C EA51 move.w D0, 0xEA51
00001676 222E 000C move.l D1, [A6 + 0xC]
label0000167A:
0000167A B298 cmp.l D1, [A0]+
0000167C 6706 beq +0x8 /* 00001684 */
0000167E 4A98 tst.l [A0]+
00001680 6712 beq +0x14 /* 00001694 */
00001682 60F6 bra -0x8 /* 0000167A */
label00001684:
00001684 43FA 0020 lea.l A1, [PC + 0x20 /* 000016A6, value 0x76657273 'vers', cstring "vers" */]
00001688 D3D0 add.l A1, [A0]
0000168A 4ED1 jmp [A1]
label0000168C:
0000168C 226E 0008 movea.l A1, [A6 + 0x8]
00001690 2280 move.l [A1], D0
00001692 4240 clr.w D0
label00001694:
00001694 3D40 0010 move.w [A6 + 0x10], D0
00001698 4E5E unlink A6
0000169A 205F movea.l A0, [A7]+
0000169C 508F addq.l A7, 8
0000169E 4ED0 jmp [A0]
label000016A0:
000016A0 303C EA52 move.w D0, 0xEA52
000016A4 60EE bra -0x10 /* 00001694 */
000016A6 7665 moveq.l D3, 0x65
000016A8 7273 moveq.l D1, 0x73
000016AA 0000 0060 ori.b D0, 0x60 /* '`' */
000016AE 6D61 blt +0x63 /* 00001711 */
000016B0 6368 bls +0x6A /* 0000171A */
000016B2 0000 0064 ori.b D0, 0x64 /* 'd' */
000016B6 7379 moveq.l D1, 0x79
000016B8 7376 moveq.l D1, 0x76
000016BA 0000 0088 ori.b D0, 0x88
000016BE 7072 moveq.l D0, 0x72
000016C0 6F63 ble +0x65 /* 00001725 */
000016C2 0000 0092 ori.b D0, 0x92
000016C6 6670 bne +0x72 /* 00001738 */
000016C8 7520 moveq.l D2, 0x20
000016CA 0000 009E ori.b D0, 0x9E
000016CE 7164 moveq.l D0, 0x64
000016D0 2020 move.l D0, -[A0]
000016D2 0000 00E8 ori.b D0, 0xE8
000016D6 6B62 bmi +0x64 /* 0000173A */
000016D8 6420 bcc +0x22 /* 000016FA */
000016DA 0000 011A ori.b D0, 0x1A
000016DE 6174 bsr +0x76 /* 00001754 */
000016E0 6C6B bge +0x6D /* 0000174D */
000016E2 0000 0142 ori.b D0, 0x42 /* 'B' */
000016E6 6D6D blt +0x6F /* 00001755 */
000016E8 7520 moveq.l D2, 0x20
000016EA 0000 0164 ori.b D0, 0x64 /* 'd' */
000016EE 7261 moveq.l D1, 0x61
000016F0 6D20 blt +0x22 /* 00001712 */
000016F2 0000 0188 ori.b D0, 0x88
000016F6 6C72 bge +0x74 /* 0000176A */
000016F8 616D bsr +0x6F /* 00001767 */
label000016FA:
000016FA 0000 0188 ori.b D0, 0x88
000016FE 0000 0000 ori.b D0, 0x0
00001702 0000 0000 ori.b D0, 0x0
00001706 7001 moveq.l D0, 0x01
00001708 6082 bra -0x7C /* 0000168C */
0000170A 2278 02AE movea.l A1, [0x000002AE /* ROMBase */]
0000170E 7004 moveq.l D0, 0x04
00001710 0C69 0075 0008 cmpi.w [A1 + 0x8], 0x75 /* 'u' */
// begin alternate branch 00001712-0000171A
label00001712:
00001712 0075 0008 6712 0C69 ori.w [[A5 + D6 * 8] + 0xC69], 0x8
// end alternate branch 00001712-0000171A
label00001712: // (misaligned)
00001716 6712 beq +0x14 /* 0000172A */
00001718 0C69 0276 0008 cmpi.w [A1 + 0x8], 0x276
// begin alternate branch 0000171A-00001720
label0000171A:
0000171A 0276 0008 6604 andi.w [A6 + D6.w * 8 + 0x4], 0x8
// end alternate branch 0000171A-00001720
label0000171A: // (misaligned)
0000171E 6604 bne +0x6 /* 00001724 */
00001720 5240 addq.w D0, 1
00001722 6006 bra +0x8 /* 0000172A */
label00001724:
00001724 1038 0CB3 move.b D0, [0x00000CB3 /* MMUFluff/MachineType */]
00001728 5C80 addq.l D0, 6
label0000172A:
0000172A 6000 FF60 bra -0x9E /* 0000168C */
0000172E 7000 moveq.l D0, 0x00
00001730 3038 015A move.w D0, [0x0000015A /* SysVersion */]
00001734 6000 FF56 bra -0xA8 /* 0000168C */
label00001738:
00001738 7000 moveq.l D0, 0x00
label0000173A:
0000173A 1038 012F move.b D0, [0x0000012F /* CPUFlag */]
0000173E 5240 addq.w D0, 1
00001740 6000 FF4A bra -0xB4 /* 0000168C */
00001744 0C38 0004 012F cmpi.b [0x0000012F /* CPUFlag */], 0x4
0000174A 6738 beq +0x3A /* 00001784 */
0000174C 0838 0004 0B22 btst.b [0x00000B22 /* HWCfgFlags */], 0x4
00001752 6734 beq +0x36 /* 00001788 */
fn00001754:
00001754 204F movea.l A0, A7
00001756 F280 0000 fnop
0000175A F327 .extension 0x327 <<F/4-5/1>> // unimplemented
0000175C 3017 move.w D0, [A7]
0000175E 2E48 movea.l A7, A0
00001760 0C40 1F18 cmpi.w D0, 0x1F18
00001764 6716 beq +0x18 /* 0000177C */
00001766 0C40 3F18 cmpi.w D0, 0x3F18
label0000176A:
0000176A 6710 beq +0x12 /* 0000177C */
0000176C 0C40 3F38 cmpi.w D0, 0x3F38 /* '?8' */
00001770 670E beq +0x10 /* 00001780 */
00001772 0C40 1F38 cmpi.w D0, 0x1F38
00001776 6708 beq +0xA /* 00001780 */
00001778 7000 moveq.l D0, 0x00
0000177A 600E bra +0x10 /* 0000178A */
label0000177C:
0000177C 7001 moveq.l D0, 0x01
0000177E 600A bra +0xC /* 0000178A */
label00001780:
00001780 7002 moveq.l D0, 0x02
00001782 6006 bra +0x8 /* 0000178A */
label00001784:
00001784 7003 moveq.l D0, 0x03
00001786 6002 bra +0x4 /* 0000178A */
label00001788:
00001788 7000 moveq.l D0, 0x00
label0000178A:
0000178A 6000 FF00 bra -0xFE /* 0000168C */
0000178E 0C78 3FFF 028E cmpi.w [0x0000028E /* ROM85 */], 0x3FFF
00001794 6E1C bgt +0x1E /* 000017B2 */
00001796 303C A89F move.w D0, 0xA89F
0000179A A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
0000179C 2408 move.l D2, A0
0000179E 203C 0000 AB03 move.l D0, 0xAB03
000017A4 A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
000017A6 203C 0000 0100 move.l D0, 0x100
000017AC B488 cmp.l D2, A0
000017AE 6606 bne +0x8 /* 000017B6 */
000017B0 600A bra +0xC /* 000017BC */
label000017B2:
000017B2 7000 moveq.l D0, 0x00
000017B4 6006 bra +0x8 /* 000017BC */
label000017B6:
000017B6 203C 0000 0200 move.l D0, 0x200
label000017BC:
000017BC 6000 FECE bra -0x130 /* 0000168C */
000017C0 1038 021E move.b D0, [0x0000021E /* KbdType */]
000017C4 41FA 0016 lea.l A0, [PC + 0x16 /* 000017DC, value 0x3130B02 */]
000017C8 2248 movea.l A1, A0
label000017CA:
000017CA 1218 move.b D1, [A0]+
000017CC 6700 FED2 beq -0x12C /* 000016A0 */
000017D0 B200 cmp.b D1, D0
000017D2 66F6 bne -0x8 /* 000017CA */
000017D4 91C9 sub.l A0, A1
000017D6 2008 move.l D0, A0
000017D8 6000 FEB2 bra -0x14C /* 0000168C */
000017DC 0313 btst [A3], D1
000017DE 0B02 btst D2, D5
000017E0 0106 btst D6, D0
000017E2 0704 btst D4, D3
000017E4 0508 btst A0, D2
000017E6 0900 btst D0, D4
000017E8 7000 moveq.l D0, 0x00
000017EA 4A38 0291 tst.b [0x00000291 /* PortBUse */]
000017EE 6B16 bmi +0x18 /* 00001806 */
000017F0 1238 01FB move.b D1, [0x000001FB /* SPConfig */]
000017F4 0201 000F andi.b D1, 0xF
000017F8 0C01 0001 cmpi.b D1, 0x1
000017FC 6608 bne +0xA /* 00001806 */
000017FE 2078 02DC movea.l A0, [0x000002DC /* ABusDCE */]
00001802 1028 0007 move.b D0, [A0 + 0x7]
label00001806:
00001806 6000 FE84 bra -0x17A /* 0000168C */
0000180A 0C38 0002 012F cmpi.b [0x0000012F /* CPUFlag */], 0x2
00001810 6D16 blt +0x18 /* 00001828 */
00001812 7000 moveq.l D0, 0x00
00001814 1038 0CB1 move.b D0, [0x00000CB1 /* MMUType */]
00001818 0C00 0001 cmpi.b D0, 0x1
0000181C 670C beq +0xE /* 0000182A */
0000181E 0C00 0003 cmpi.b D0, 0x3
00001822 6D04 blt +0x6 /* 00001828 */
00001824 5340 subq.w D0, 1
00001826 6002 bra +0x4 /* 0000182A */
label00001828:
00001828 7000 moveq.l D0, 0x00
label0000182A:
0000182A 6000 FE60 bra -0x19E /* 0000168C */
0000182E 303C A89F move.w D0, 0xA89F
00001832 A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
00001834 2408 move.l D2, A0
00001836 203C 0000 A88F move.l D0, 0xA88F
0000183C A746 syscall GetToolBoxTrapAddress/GetToolTrapAddress, flags=7
0000183E 2038 0108 move.l D0, [0x00000108 /* MemTop */]
00001842 B488 cmp.l D2, A0
00001844 670A beq +0xC /* 00001850 */
00001846 598F subq.l A7, 4
00001848 3F3C 0016 move.w -[A7], 0x16
0000184C A88F syscall OSDispatch
0000184E 201F move.l D0, [A7]+
label00001850:
00001850 6000 FE3A bra -0x1C4 /* 0000168C */
fn00001854:
00001854 225F movea.l A1, [A7]+
00001856 201F move.l D0, [A7]+
00001858 0838 0006 028E btst.b [0x0000028E /* ROM85 */], 0x6
0000185E 6606 bne +0x8 /* 00001866 */
00001860 A055 syscall StripAddress
00001862 2E80 move.l [A7], D0
00001864 4ED1 jmp [A1]
label00001866:
00001866 C0B8 031A and.l D0, [0x0000031A /* MaskBC/MaskHandle/MaskPtr/Lo3Bytes */]
0000186A 2E80 move.l [A7], D0
0000186C 4ED1 jmp [A1]
fn0000186E:
0000186E 4E56 0000 link A6, 0
00001872 48E7 7F38 movem.l -[A7], D1,D2,D3,D4,D5,D6,D7,A2,A3,A4
00001876 7000 moveq.l D0, 0x00
00001878 246E 000C movea.l A2, [A6 + 0xC]
0000187C 226E 0008 movea.l A1, [A6 + 0x8]
00001880 1012 move.b D0, [A2]
00001882 6706 beq +0x8 /* 0000188A */
label00001884:
00001884 12DA move.b [A1]+, [A2]+
00001886 51C8 FFFC dbf D0, -0x6 /* 00001884 */
label0000188A:
0000188A 4CDF 1CFE movem.l D1,D2,D3,D4,D5,D6,D7,A2,A3,A4, [A7]+
0000188E 4E5E unlink A6
00001890 4E75 rts